GPSD Time Service HOWTO is excellent reading on how to find the right balance of accuracy and cost for locally built NTP servers based upon GPS signalling.
Choice of hardware, type of signalling, specific configurations, and tuning are covered. There is even a section on using PTP, which is a Network based Precision Time Protocol.
Someone mentioned specific hardware: Garmin 18x LVC
There is even a Raspberry PI project.