In urban canyons, the reflections and obstructions of Global Navigation Satellite System (GNSS) signals frequently lead to significant errors in measurements, the number of which can be larger than that of the correct measurements. This leads to a severe degradation of GNSS performance in urban canyons. Various fault detection and exclusion (FDE) algorithms have been developed to cope with these outliers caused by multipath effects. Most of these FDE algorithms check the consistency among measurements. However, in urban canyons, their effectiveness is significantly compromised by the lack of fault-free measurements. There is an urgent need to develop new constraints for enhancing GNSS FDE performance. In recent years, the advent of Chip-Scale Atomic Clock (CSAC), known for their affordability and high frequency stability, offers a promising solution for accurately predicting receiver clock errors. Additionally, using city maps to establish height constraints is another way to increase redundancy. The purpose of this study is to improve the GNSS positioning accuracy in urban canyons with the aid of CSAC and city map data. A novel FDE algorithm is developed to search for positions through the constraints of height and receiver clock. Extensive tests were conducted in urban canyons to evaluate the performance of the system. Results showed that the positioning accuracy can be improved from tens of meters to less than 6 m.