Hello!
I installed a GPS receiver on the server and set the NTP server to synchronize the clock from it. Everything seems to be working, but the result is a completely wrong date and time.
According to your GPRMC string, the GPS device thinks the date is 2000-10-09, 13 months after the first GPS week rollover. Given currently it is 13 months after the second GPS week rollover (happened April last year), obviously your GPS device lacks firmware update to reflect the second rollover. However it’s very interesting that your GPSd translated the GPRMC string to a time in the 22nd century!
Well, the GPS device does output GPGSA string with A3 fix, but no GPGSV string at all, so maybe the list of satellites is deliberately disabled.
Does your GPS device support PPS output? If not, there is a script to simply correct the date in the GPRMC string and then feed it back to GPSd through stdin.
However most people using GPS as their NTP time source will like to have PPS signal as a more precise source, so if your device really does not have PPS output, then buying a new one is reasonable decision.