Corey Perry put the Ducks in front at the 4:18 mark of the second period with his team-leading 34th goal of the season. The All-Star right wing converted on a wrist shot from the faceoff circle for this third goal in the last two games. Matt Beleskey and Ryan Getzlaf earned assists on the play.
Patrik Berglund scored the go-ahead goal in the third period and Jaroslav Halak made 24 saves for his career-high seventh straight win.
St. Louis improved to a league-best 28-4-4 at home with their seventh win in eight games. David Backes and Kevin Shattenkirk also scored for St. Louis, which is 20-1-3 in its last 24 home games.
The power play continued to be a source of frustration for the Ducks, as the special teams unit went 0-for-3 on the night. Regardless of Anaheim's recent struggles with the man-advantage, the Blues penalty kill is one of the better ones in the league (ranks ninth) and has now killed off 35 straight penalties.
The Blues have a league-leading 93 points, marking the first time they have led the NHL in points this late in the season since March 9, 2000.
Backes tied the game at 1 with a power-play goal midway through the second period. He deflected in a shot by David Perron, who assisted on two of the Blues' goals. Backes, who also added an assist, leads the team with 20 goals.
Berglund ended a 14-game scoring drought with his 14th of the season, snapping a 1-1 tie at 4:47 of the third period. He scored from in front of the net off a pass from Andy McDonald, who has 12 points in his last 14 games.
Shattenkirk pushed the lead to 3-1 just over two minutes later.
Jonas Hiller stopped 24-of-27 St. Louis shots in his 27th straight start for the Ducks. Two more games remain on Anaheim's road trip, as the club visits Dallas on Saturday and Colorado on Monday.
Notes: St. Louis has a league-leading 46 points since Jan. 1. ... The Blues are 35-0 when scoring at least three goals. ... Anaheim C Nick Bonino suffered a lower-body injury in the second period and did not return. ... Anaheim has scored two goals or less in the last nine road games. ... St. Louis had a 6-7 record when Ken Hitchcock took over for Davis Payne on Nov. 6. ... Bruce Boudreau is 22-16-6 since taking over for Randy Carlyle on Nov. 30.
The Associated Press contributed to this report.