Seeing ~2 second periods of bad IMU/GPS/orientation data in log visualization

I normally fly for 30 mins or less and put the plane away and have had no issues. Today I left he FC on for 50 minutes and only flew 3 ~5min flights during that time. For some reason the 2nd and 3rd flights were really sketchy in stabilize mode.

Gps data on the OSD was also showing crazy numbers like 0mph, then suddenly 80mph, when it should be 30-45mph. The 3D visualization of the flight path shows a jagged, erratic path, where the orientation of the plane is all over the place. Why? I graphed everything I could find to compare the first flight with the second flight and found no correlation other than the IMU and BARO temp was a few degrees higher for the 2nd and 3rd flights. What causes the momentary erratic orientation state? It is as if the CPU is briefly undercloicking itself or some other process is lagging the system.
I’m using a Matek H743-WING

Example image:

log:
https://s3.amazonaws.com/realsentrygun.com/uploads/2021-07-21+19-15-18.bin

very related Yaw (and plane) out of control in auto modes (ATT.Yaw)

This is most likely caused by my cheap, knock-off NEO-M8N GPS, but isn’t clear how. The graph of GPS.Lat and GPS.Lon are smooth. The GPS.GCrs is smooth.

ATT.Yaw is erratic. What goes into calculating ATT.Yaw when using a GPS with no compass?

XKF4.SV and XKF4.SP also climb during the period of erratic Yaw / erratic position that starts at 34m 47s mark.

Seems to be related to https://github.com/ArduPilot/ardupilot/pull/18008