Ich hab bei der uart_init() nun folgenden Code gestrichen. Jetzt funktioniert es.

// Flush Receive-Buffer (entfernen evtl. vorhandener ungültiger Werte)
do
{
// UDR auslesen (Wert wird nicht verwendet)
UDR;
}
while (UCSRA & (1<<RXC));

// Rücksetzen von Receive Complete Flag
UCSRA = (1<<RXC);
ISRs hab ich nur eine einzelne die

Code:
ISR(SIG_UART_RECV)
{
    //unsigned char buffer;

    // Daten aus dem Puffer lesen ...
    //buffer = UDR;
}
Und da steht nichts drin