Und wie groß ist UART_TX_BUFFER_SIZE?
Wenn es kleiner ist als 26, dann hast du in ISR(SIG_USART1_RECV) definitiv einen Deadlock. Wenn es größer ist, hängt es davon ab ,wie viel gerade im Buffer ist.

Der konkrete Deadlock:
Der Debug-Code schreibt die zu sendenden Daten in einen Puffer. Ist nicht mehr genug Platz im Puffer, wird so lange gewartet, bis wieder Platz ist. Das Senden funktioniert aber per Interrupt, und die sind abgeschaltet innerhalb einer anderen ISR. Es wird also nichts gesendet, also wird kein Platz im Puffer frei, also wird bis in alle Ewigkeit gewartet.