I cannot reproduce this lock-up when the jumpers are set to receive messages from the GPS module!
All right, so I caught it in the middle of something.
The output frequency is all over the place. There's no nice seeking back and forth (yet), as I've shown before, but it clearly cannot synchronize.
At the same time, the NMEA messages look totally fine. Well, at least the coordinates are correct.
I have scrolled the minicom buffer backwards for ~1.5h and noticed that the output changed: from four "$GPGSV" lines starting with "$GPGSV,4," followed by a number from 1 to 4, to three lines starting with "$GPGSV,3," followed by a number from 1 to 3. I cannot correlate this with the time when it lost proper tracking, but 1.5 hour ago would seem likely.
On scrolling further backwards, I see that this number flapped between 3 and 4, and even earlier between 5 and 6. I guess that's the number of satellites it can receive data from?
Will check what it says in the morning and what the output frequency will be.
p.s. while I was scrolling the screen buffer and writing this post, the output frequency stabilized and is now exactly where it's expected to be. Go figure.
So yes, I'm still unable to see it going into a permanent bad state when the UART->USB jumpers are set for the GPS module. It does lose proper tracking from time to time, but it seems to be able to recover, unlike when the jumpers were set for the MCU.