Brayden Schenn scored what proved to be the game-winner, and Steve Mason (30-16-6) made 32 saves as the Flyers improved to 12-2-1 since Feb. 1.
Jake Voracek, set up by the sizzling Claude Giroux (two assists, six-game points steak), gave the Flyers a 3-1 lead by scoring from the left circle with 4 minutes, 19 seconds left. Wayne Simmonds added his 24th goal, an empty-netter, with 2:54 remaining.
With the Flyers clinging to a 2-1 lead, Mason made a pair of spectacular saves on Derek Roy from the doorstep while St. Louis was on a power play with a little over nine minutes left.
The Flyers killed all six penalties - Giroux was assessed four minors - and they have been successful on 26 of their last 27 kills.
"We probably needed a little more discipline tonight," said defenseman Braydon Coburn after his team was outshot, 33-19. "But Mason is playing unreal. When there's breakdowns, he's just made some ridiculous saves."
Hartnell (power play) and Schenn scored second-period goals to give the Flyers a 2-1 lead. Hartnell's 19th goal, scored from the slot after a feed from Voracek, tied the score at 1 after 57 seconds of the second.
With 6:36 to go in the second, Schenn and Simmonds worked a give-and-go that helped give the Flyers a 2-1 lead.
Simmonds poked the puck away from a St. Louis player in the neutral zone and fed Schenn, who returned a quick pass to the winger on the left side. Ryan Miller stopped Simmonds' shot, but Schenn knocked the rebound past the goalie.
"I just yelled for the puck, and Schenner made a great play to me," Simmonds said. "I just tried to put it off Miller's pads for Schenner to come in because I didn't have much of an angle, and it worked perfectly."
After being outplayed in the first period - "it felt like they had seven guys on the ice," Voracek said - the Flyers controlled the second.
"We were getting pucks in deep and establishing our forecheck," Schenn said. "And when we do that, we get our scoring chances."
In the first period, winger Steve Downie smashed his face into St. Louis's Kevin Shattenkirk and left the game; Giroux hit the left post on a power play; and Andrew MacDonald lost a puck battle in the offensive end and it triggered a shorthanded Blues goal as Jaden Schwartz finished a two-on-one.
But things turned around. Just like this intriguing season.
The Flyers signed winger Michael Raffl to a two-year extension worth a total of $2.2 million. . . . Mason has a 1.50 goals-against average and a .948 save percentage in his four starts during the winning streak. . . . The Flyers alternated Raffl and Zac Rinaldo on Downie's third-line spot. Downie will be reevaluated Sunday. . . . The Flyers host Los Angeles on Monday, the first time Jeff Carter and Mike Richards will face the Flyers together at the Wells Fargo Center.