This makes no sense. If you are getting back command with a loopback - it should work. If the cmd string is correct, the only other variable would be somehow baudrate drifted (RMC 233 voltage issue is another but since rebootingdoesn'tchange that not in this case).
Re-sending new code coule be re-setting the baud rate. Hookup up a laptop with 232 at TV end and see what you actually get when in fault state.