Hi Brendan,
Would you please send the project to me so that I can test your project on FRDM-K22F or TWR-K22F120M board. And please send one frame data in hex from GPS.
The UART0 of K22F120M contains 8-entry transmit and 8-entry receive FIFOs, this helps to reduce the load of the core.
For example:
config.rxFifoWatermark = 8;
config.txFifoWatermark = 8;
UART_ReadBlocking(DEMO_UART, &ch, 8);
UART_WriteBlocking(DEMO_UART, &ch, 8);
Normally we will not use the polling example, maybe you can test these examples with interrupt.

Best Regards,
Robin
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------