Price stopped 28 Carolina Hurricanes shots, and the Canadiens provided enough offence to earn a 3-1 win on Monday night.
The Hurricanes had alternate captain Jordan Staal in the lineup for the first time this season, but they couldn't overcome Price's performance.
Jiri Sekac and Lars Eller each scored second-period goals for Montreal, which got the clincher when Max Pacioretty added an empty-netter in the final minute.
Eller's goal was the 21,000th by a Canadiens player since 1909 in the team's pre-NHL days.
Montreal (23-11-2) has won three straight. Carolina (10-22-4) dropped its second in a row.
"Carey Price was Carey Price," Canadiens coach Michel Therrien said. "And Sekac bounced back after a tough game against the Islanders (on Dec. 23).
"He was hungry and he was quick to the puck and made good decisions. I really liked the way we played the first period. We dictated the game. Carey made some big saves."
Eric Staal, playing in his 800th NHL game, scored a power-play goal for Carolina off assists from Jiri Tlusty and Eric's brother Jordan, who broke his right leg during a preseason game on Sept. 23.
Tlusty had an assist in his first game after he missed seven due to an upper-body injury. Cam Ward stopped 16 shots for Carolina.
Jordan Staal missed shifts in the closing minutes due to what Hurricanes coach Bill Peters said was a minor injury. Peters said he expects Staal to be fine.
"I didn't like the last three minutes of the first," Peters said. "Then we had a power play we didn't score on and (Sekac) comes out of the box and scores, so that's a huge turning point.
"But I think when the Staal-Staal-Tlusty unit scored on the power play, that gave us a lot of energy to finish the game."
The Canadiens also won the teams' first meeting 13 days earlier, beating the visiting Hurricanes 4-1.
"We'll definitely take it," Price said. "Carolina played a pretty good third period, but we were able to hold on and get the two points. The guys are playing extremely well in front of me.
"I left a lot of rebounds out in front of the net. The D-corps guys are sagging down into the house and going a great job."
Sekac scored an unassisted goal from the slot at 6:45 of the second period, putting the Canadiens ahead 1-0 just 15 seconds after he came out of the penalty box.
Eller doubled the lead on a shot from the right circle off Dale Weise's pass from the corner at 18:45 of the second.
"Weise made a nice little backhand play into the slot and I was just trying to get it off quick in between their D," Eller said. "Fortunately it went in. When we get to the net, good things happen. Every time we get to the net we get good chances."
Eric Staal made it 2-1 with a power-play goal 2:59 into the third period when he followed his own shot.
NOTES: Canadiens C Manny Malhotra, an alternate captain for the Hurricanes last season, played his first game in Raleigh since signing with Montreal in July. ... Hurricanes RW Alexander Semin (upper body) missed his third straight game. D John-Michael Liles sat out due to an illness. LW Zach Boychuk was a healthy scratch. ... Canadiens D Bryan Allen (illness) and D Mike Weaver (concussion) both missed a sixth straight game. LW Michael Bournival (shoulder) was sidelined for a 14th in a row. ... The teams' third and final meeting of the season will be March 19 at Montreal.