You will have to add a term to the antecedent on every change of uart_tx_o, otherwise your assertion would fire a cycle after every change of uart_txt_o
Try this:
property framecheck
disable iff(rst || !tx_frame)
tx_frame && $change(uart_txd_o) ||-> ($stable(uart_txd_o)[*15]);
endproperty