UART Tx stops working without UART Rx connected
It may be that the RX Interrupt goes into an infinite loop of unhandled interrupts or an overrun or frame error occurs. To protect against that, flush the receive buffer and reset the UART if this occurs. i.e. put this into the RXInterrupt code

if (PIR1bits.RC1IF)
{
  PIR1bits.RC1IF = 0;

  if ((RCSTAbits.OERR) || (RCSTAbits.FERR))
  {
    // Resets UART
    RCSTAbits.CREN = 0;
    Nop();Nop();Nop();Nop();
    RCSTAbits.CREN = 1;

    // Clears RX Buffer
    RCREG;
    RCREG;
  }
}