Die benötigten Register stehen im DB auf S168. Tabelle 17-6 ist für Stoppbits (USBS1=0 => 1 Stoppbit, USBS1=1 => 2 Stoppbits).
Damit du die 6 Datenbits hast musst du "UCSR1C = (1<<UCSZ10);" schreiben (Stoppbit nicht vergessen, das ist im gleichen Register.

Man sollte auch nicht "(3<<UCSZ10)" schreiben sondern "(1<<UCSZ10) | (1<<UCSZ11)". Das ist aber nur meine Meinung. Der Grund ist das man bei den Registern sofort erkennt was gesetzt ist und was nicht.

Ob das mit der Baud Rate passt weiß ich nicht. Wenn du keine vernünftigen Daten bekommst könnte es falsch eingestellt sein. Achte auch auf die Tabellen mit den Abweichungen bei unterschiedlichen Taktfrequenzen.

Eventuell passt auch die Taktfrequenz nicht ganz. Ich hatte vor Kurzem das Problem das ich einen Atmega88 mittels FTDI Chip (USB/UART Wandler) auslesen wollte. Wenn ich den internen 8MHz Takt mit 1/8 Teiler (also 1MHz Taktfrequenz) auslesen wollte hat es funktioniert. Habe ich es allerdings mit dem Takt vom RFM12 Board (ist ebenfalls auf der Platine) versucht kam nur Schrott am Terminal an.

MfG Hannes