Carey Price stopped 22 shots, Brian Gionta and Rene Bourque added goals for Montreal, and Alex Galchenyuk had his second two-assist performance in two games to start the season.
Vincent Lecavalier scored for Philadelphia, coming off a 3-1 home loss to Toronto in its season opener on Wednesday night. The Flyers play again Sunday night at Carolina.
Many of the 21,273 at the Bell Centre booed each time the puck went to Lecavalier, who turned down the Canadiens to sign with the Flyers this offseason.
It was Daniel Briere's first game against Philadelphia since the Flyers bought him out, but it was a quiet night for the veteran forward, other than taking two minor penalties.
Tomas Plekanec won a faceoff in the Flyers' zone and Bourque slipped a pass across the crease for Gionta to bang past Ray Emery for the opening goal 8:10 into the game.
The Flyers were victims of a quick whistle when Price lost a puck at his feet and Matt Read knocked it in, but it was ruled no goal.
Eller, who scored twice in a season-opening 4-3 loss to the Maple Leafs, backhanded in the rebound of Gallagher's shot that missed the net only 12 seconds into the third frame.
P.K. Subban's shot looked to have gone in during a third-period 5-on-3 but video review found it went in the side netting. Only 18 seconds after play resumed, Subban faked a shot and passed to Galchenyuk, who slipped it to Gallagher for a 3-0 lead.
Lecavalier was at the side of the net to lift the rebound of Mark Streit point shot past Price on a power play 9:13 into the third. Bourque added a power-play goal in the final minute.