Actually, to start with, I would just comment out the UART_INIT function in alt_sys_init(). As to how the driver is actually structured, it uses a fair bit of C preprocessor macro "magic"...you can trace through it later....for now, it's better just to disable the UART init function and implement your custom one.
Using the UART for both your special communications needs and stdout is probably not a good idea. I would also switch stdout/stdin/stderr to jtag_uart.
From there, you can tinker with various settings until you're happy. You could even write a new UART driver with prioritization for your communication needs.
Cheers,
slacker