Montreal has come up with at least one point in nine straight games (7-0-2).
The teams battled to a 2-2 standoff through two periods, but Gallagher tipped in a shot by Josh Gorges midway through the third.
Max Pacioretty then added his second goal of the game and Brian Gionta scored into an empty net with 2:26 to play.
Alexei Emelin's first goal of the season lifted the Canadiens into a 1-1 tie late in the first and Pacioretty scored on the power play early in the second. Montreal has not suffered a loss in regulation since Feb. 9.
The win went to Carey Price, who made 21 saves. Toronto lost for the third time in five games while Ben Scrivens was facing a barrage of 39 shots.