The UART peripherals in smaller MCUs most often don't have any ability to invert the output bits.
You cannot just take the byte data returned by the peripheral and invert it in software because the asynchronous protocol requires a start bit edge of specific polarity.
Read the peripheral description of the relevant micro and compare with the typical serial protocol and you will understand.
In the above diagram, the timing is all from the falling edge of the input. In the case of RS-232, the idle state is called mark and is -5 to -15V and the start bit is called space and is +5 to +15V. The diagram above shows the typical output of an MCU, which is typically fed to an inverting driver to get appropriate RS-232 levels. If both ends of the interface use TTL inverted levels, then there is no need for an inverter (but of course you lose the advantages of robust RS-232 drivers which are supposed to be able to withstand shorts and connection to relatively high positive or negative voltages)
Since this is and transistors are virtually free, some micros allow the output polarity to be inverted with built-in hardware and a configuration bit, as supercat suggests, but it is far from ubiquitous.