Garbled serial on custom Arduino Uno
Through the chat we found out the problem. The Atmega16U2 did not have the fuses set to use the external clock. This was causing the 16U2 to divide the input baud rate by 8.

Thank you Connor for helping solve this problem.