The ultra-wideband (UWB) technology has been increasingly recognized as an efficacious strategy for Indoor Positioning Systems (IPSs). However, the accuracy of the UWB system can be severely degraded by non-line-of-sight (NLOS) errors. In this study, we proposed a new method to reduce the UWB positioning error in such an indoor environment. We developed a system consisting of a Robotic Total Station (RTS), four UWB base stations, a moving target (including a prism and a UWB tag), and a PC. The observed coordinates of the moving target, captured using millimeter precision from an RTS device, served as the ground truth for calculating the positioning errors of the UWB tag. In a significant NLOS scenario, the UWB’s three-dimensional positioning error was identified to exceed the nominal value declared by the manufacturer by a factor of more than three. A detailed analysis revealed that each coordinate component’s error distribution pattern demonstrated considerable variance. To reduce the NLOS error, we designed a combined multilayer neural network that simultaneously fits errors on all three coordinate components and three separate multilayer networks, each dedicated to optimizing errors on a single coordinate component. All networks were trained and verified by benchmark errors obtained from the RTS. The results showed that neural networks outperform the traditional methods, attributed to their strong nonlinear modelling ability, thereby significantly improving the external accuracy by an average reduction in RMSE by 61% and 72%. It is evident that the proposed separate networks would be more suitable for NLOS positioning problems than a combined network.