Breel Embolo put Switzerland in front after 49 minutes, his close-range effort full reward for their superiority.
But Moore claimed his sixth international goal 16 minutes from time before Mario Gavranovic's late effort for Switzerland was disallowed for offside following a VAR check.
A point was more than Wales deserved and Moore's header will give them belief that they can progress from a competitive group.
Wales had the first chance after 15 minutes when Daniel James crossed from the left and Moore forced a superb one-handed save from Switzerland goalkeeper Yann Sommer.
Moore was injured moments later in an aerial clash with former Rangers defender Kevin Mbabu, but he was able to continue after treatment and returned wearing a patriotic red head bandage.
Wales' plan was to launch quick counter-attacks and utilise the pace of Bale and James, but too often they were careless in transition and moves broke down before they started.
Switzerland's pressure grew as the half drew to a close and Haris Seferovic failed to find the target on three occasions when well placed inside the area.
The clearest opening came on the stroke of half-time when Embolo held off Chris Mepham and Wales were relieved to reach the interval level.
But parity did not last long, with the Wales defence breached just moments after Ward had denied Embolo with a superb stop.
Xherdan Shaqiri swung over the resulting corner and Embolo held off the challenge of Connor Roberts to send his header past a helpless Ward from six yards out.
Wales responded well to the setback, with Ben Davies' drive deflected just over before Moore met Morrell's cross with a sweet header.
Gavranovic thought he had restored Switzerland's lead six minutes from time, but Wales were saved by a VAR check.
Ward came to their rescue again to push another Embolo effort over the bar and the point keeps Wales very much in the hunt for qualification for the round of 16.