in reply to tty-level buffer overflows

Perhaps Device::SerialPort would help. It should allow somewhat lower-level access to the specific properties of a serial port.

You may also be able to use stty(1) to set the serial port's options.