e se facesse un vichinghissimo
UCSR0B &= ~(1<<TXEN0); //disabilita TX
UCSR0B &= ~(1<<RXEN0); //disabilita RX
UCSR0B |= (1<<RXEN0); //abilita RX
UCSR0B |= (1<<TXEN0); //abilita TX
??
lo spegnimento di tx/rx dovrebbe azzerare il buffer