Price stopped 13 shots in the first period and 20 more in the second on his way to his seventh career shutout, his second in four games.
"It's always the next step that you have to look forward to," Price said. "We can savor this one tonight, but then tomorrow we start preparing for the next one."
He stopped 34 shots one week earlier in a 2-0 win over Vancouver, which began Montreal's current streak.
"It started from the puck drop," Canadiens defenseman P.K. Subban said. "He made some really good saves in the first period to keep us in it and he gave us an opportunity and we took the lead so we just kept on building after that, but he stood on his head. He made timely saves and he's playing well right now."
Gionta assisted on Mike Cammalleri's goal during a two-man advantage midway through the first period. The Canadiens' captain got his second assist on Tomas Plekanec's goal 13:48 into the second.
Gionta scored for the third game in a row when he added Montreal's second power-play goal 6:24 into the third.
Sergei Bobrovsky made 25 saves for Philadelphia, which lost in regulation for the first time in three weeks. The Flyers, who beat the Ottawa Senators 5-1 on Monday, had gone 9-0-1 since a 2-1 loss in Columbus on Oct. 25.
"It's hard to talk about that right now," Flyers coach Peter Laviolette said. "We're just coming off a game here -- we're here to win hockey games and we didn't do that tonight, but the one thing you always want to look for is the work ethic and effort and it was there again tonight. We just couldn't get there."
It was the first meeting of the two Eastern Conference finalists since Philadelphia's series win last spring. The Flyers took eight of the 14 penalties called in the third and 35 of the 60 minutes overall between the two teams in the period.
"We wanted to come out with the same zip in the third that we did in the second and it didn't happen," Laviolette said. "It was kind of frustrating at that point. Shots heavily in our favor, chances heavily in our favor after two periods and we're down on the scoreboard and we're fighting and we can't seem to find a goal.
"Their goaltender played pretty well tonight and we couldn't find it, we couldn't get on the board. I think that was frustrating. I think that frustration kind of built through the third period," he said.
Montreal defenseman Andrei Markov was out of the lineup because of a right knee injury he suffered late in Saturday night's 7-2 win over Carolina after colliding with Hurricanes captain Eric Staal.
The Canadiens said prior to the game that Markov, who missed the first 10 games recovering from surgery on the same knee, will be sidelined indefinitely. There was no update on the nature of his injury.
Cammalleri scored 9:36 into the first during a lengthy two-man advantage. Flyers defenseman Chris Pronger was sent off for clearing a puck into the crowd at 8:39, 23 seconds after Matt Carle was called for slashing.
Plekanec scored in the second period to put the Canadiens up 2-0 moments after Philadelphia had two straight power plays, including a two-man advantage for 30 seconds.
The Montreal center took Gionta's pass and stopped in the right faceoff circle before surprising Bobrovsky with a shot under his right pad while Canadiens forward Travis Moen drove the left side.
"Moen did a great job driving the net," Gionta said. "A lot of guys don't see that but he was driving wide, driving to the net, and it kind of gets [Bobrovsky] off his near-side post, gets him thinking about Moen, and Pleky just made a great shot."
Canadiens center Jeff Halpern had to be helped off the ice after he was hit by Philadelphia's Darroll Powe in the corner 27 seconds into the third. Powe appeared to get his elbow up on Halpern's head, though no penalty was called on the play.
Halpern's helmet came off after his head struck the boards and the back of his head struck the ice when he fell.
"It was a hit from behind," Canadiens coach Jacques Martin said. "Unfortunately the referee didn't see it that way."
Gionta got his third point of the game at 6:24 when his backhand toward the net got past Bobrovsky for his fourth goal in five games.
Bobrovsky made his 11th straight start. ... The Canadiens have scored seven power-play goals in their past four games. They scored only once with the man advantage through their first 14 games. ... Montreal defenseman Alexandre Picard, who was a healthy scratch for seven straight games, took Markov's spot in the lineup.
Copyright by STATS LLC and The Associated Press
MONTREAL - NOVEMBER 16: Lars Eller #81 of the Montreal Canadiens chases teammate Travis Moen #32 during warm up...