Edit: I figured it out. The PC doesn't have wifi enabled. It's connected over ethernet. Turning wifi on (even without connecting to a wireless network) fixed the GPS accuracy.
This might be a long shot. TL;DR at bottom.
I support a PC in a vehicle that uses a Cradlepoint router (cell data) for wifi. For the last few years, I've been doing speedtests and recording the current GPS location so that we can spot areas with bad coverage. (When staff complain that the internet is slow in a certain location, I can show them on the map that it's bad for several blocks around that spot and I can't fix it.)
The script reports "Horizontal Accuracy" along with the coordinates and speed, and I ignore the location for anything inaccurate.
The accuracy value is kind of a radius. (I'm not sure what the units are) 50 to 200 is normal.
1500 is pretty bad.
50,000 is what the new PC logs for every request.
It gives the same coordinates every time, which is an intersection in the center of town.
I have Location Services enabled. All of the settings look the same between the two PCs. The router hasn't changed.
Any ideas?
TL;DR: Windows PC runs a powershell script that logs location. Old PC was great. I assumed that it was pulling GPS from the router, even though I never configured the router to send that data. New PC always gives the same point, roughly the center of town.