William Nylander scored to extend his point streak to seven games, and Jack Campbell made 21 saves for the Maple Leafs (35-13-6), who are 7-0-1 in their past eight.
"It's a good feeling," Toronto forward Mitchell Marner said. "It's something we wanted to try and do at the start of the season and set our goal to. Obviously it's not the ending goal we want, but it is step two of what we wanted to accomplish. Now we just have to make sure we keep going with the pedal down."
Brett Kulak and Nick Suzuki scored, and Jake Allen made 23 saves for the Canadiens (24-21-9), who have lost three in a row, including 5-2 here Thursday.
Montreal is fourth in the seven-team North Division. The Maple Leafs, Edmonton Oilers and Winnipeg Jets have three of the four playoff berths.
"We have to have better starts," Canadiens defenseman Jon Merrill said. "Tonight was a step in the right direction in that department, but I think we have to put together a complete game and get a win. That's when your confidence starts to build. You win a game, string a few together and you start feeling good."
Toronto trailed 2-0 before scoring three straight goals in the second period.
"We weren't good at all in the first period and that was disappointing," Keefe said. "We knew Montreal was going to be a lot better, they had a day off (Friday) so we knew they'd be better than when we saw them Thursday (on the second of back-to-back games). That's an area where our team grew this season, these types of games didn't get away on us, we got to work and climbed our way back."