/dev:
Have you looked at NeoGPS yet? The Adafruit_GPS with SoftwareSerial is a particularly inefficient combination. Just for fun, I have attached a version of your sketch that uses NeoGPS and NeoSWSerial. The program size is about 1600 bytes smaller, and it uses 700 fewer bytes of RAM (only 575 used). :o
<...>
@ /dev
NeoGPS is the obvious winner - thanks for bringing it to my attention. Less resources is definitely a plus. Very nicely integrates into the code which is quiet ugly right now because it was originally written long ago for use with the ILI9340 graphic display and I hacked the character-based I2C OLED as my wife requires a high-contrast display that is not as busy as the initial graphic multi-color one.
Regards,
Ray