A related discussion is here:
Issue with uart RX data when sharing with multiple tasks - Kernel - FreeRTOS Community Forums
Just out of curiosity, how does your architecture handle acknowledgements (ie serial reads that need to sync up with the transmissions), or does your protocol not need those? (warning, slightly off topic)