Rask made 35 saves for his third win in 15 games against Montreal.
"They had a couple of breakaways, but we kept it on the outside pretty good," said Rask, who ended Boston's five-game losing run against the Canadiens dating to last season.
Carl Soderberg, Patrice Bergeron and Milan Lucic scored in the second, and Zdeno Chara added a goal. The Bruins (43-17-5) improved to 9-1-2 in their past dozen games and extended their run without a regulation loss on the road to 11 games.
"He's been great all year," winger Brad Marchand said about Rask. "He's the guy we look to be big for us. We didn't worry about anything that's happened in the past. It's more about how we've been playing lately. We focused on how we have to play."
With 91 points, the Bruins moved within one point of idle Pittsburgh for the Eastern Conference lead. They return to Boston to face the Phoenix Coyotes on Thursday night.
"We're in this building, and they come at us with a full-court press," Lucic said. "Tuukka kept us in there. Whenever we can withstand that pressure, it gives us a chance to win. We did that and we were able to get a few good shifts in at the end of the first that carried over into the second period."
"We felt good about how we pushed the play in the first period and we wanted to play the same way," Montreal coach Michel Therrien said. "Obviously, after their first goal, we have to respond better."
Soderberg scored from close range early in the second after Montreal rookie Jarred Tinordi misplayed the puck off a faceoff. Boston went on a counterattack after Andrei Markov fell, and Bergeron finished off a give-and-go with Marchand at 9:25. Lucic bumped Alexei Emelin off the puck and then trailed in on a rush to score on a routine shot that got between Peter Budaj's pads for his 20th of the season at 18:32.
Chara got another 23 seconds into the third when he broke in from the point and put in his own rebound.
Desharnais then found the puck in a scramble with newcomer Thomas Vanek, tying up traffic in the crease. It was Vanek's first point in three games since he was acquired from the New York Islanders in a trade-deadline deal last week.
Galchenyuk played his 100th NHL game. ... Francis Bouillon was back in the Montreal lineup for the first time since Feb. 8, bumping Mike Weaver. Brandon Prust returned after missing seven games with an upper- body injury. ... Boston sat Dougie Hamilton for a second game to make room for newcomer Andrej Meszaros.