Transmission via RF433Hz Transmitter/Receiver pair failing AVR
Generally using a UART and simple communications scheme with low-cost RF modules isn't a good idea. A few problems you'll encounter:


The receivers like a DC balanced signal (equal number of ones and zeroes) otherwise the data slicer won't operate correctly. Your example of 0x81 is 10000001 in binary that contains a long string of zeroes.
Data received over RF can have quite a bit of skew by the time the end of the byte has been received. Most hardware UARTs designed for wired communications don't cope with that well.
Before sending data you'll normally need a preamble to give the receiver time to lock.
The receivers will receive random data when no carrier being modulated correctly is present, so you'll want a way to detect a valid packet / data.


RF Monolithics have a good application note Unique Considerations for Data Radio UARTs that explores and explains these issues. Some time ago I implemented the basic PLL receiver technique they describe along with some higher level error detection and  packet control that worked well.

That was quite a bit of effort but now the VirtualWire project is available that performs all those functions. It's targeted at an Arduino but should be fairly straightforward to move across to other AVR based platforms (or other architectures for that matter).