Thatcher Demko made 29 saves, and Adam Gaudette and Nils Hoglander scored 4:12 apart in the second period for Vancouver (16-16-2), which is 7-1-0 in its past eight games, all started by Demko.
Corey Perry scored a power-play goal for Montreal (13-8-9), and Allen made 25 saves in his 300th NHL game. The Canadiens have lost four of five.
"We've got to give credit to the guys, too, they're not packing it in," Montreal coach Dominique Ducharme said. "They're going at it, and the last game we came back with two goals (to tie it in a 4-3 overtime loss to the Winnipeg Jets on Wednesday). And tonight we came back, and we could have tied it before, we had some good chances, but we tied it in the last minute. So the guys never quit, they go all out."
The teams play again here Saturday to finish the back-to-back set, which opens a six-game homestand for Montreal.
"We're playing the right way," Miller said, "and if we believe in our game, have faith in our system and we play the right way most nights, we're going to get the results."
Gaudette tied it 1-1 at 2:25 of the second period when he drove to the net and redirected Antoine Roussel's pass from the left boards past Allen's glove. Roussel returned after missing three games because of an undisclosed injury.
Hoglander gave Vancouver a 2-1 lead at 6:37 when he tipped Nate Schmidt's pass from the right point in the slot.
"For me it's just putting it in an area [where] he can get his stick on it," Schmidt said.