His second goal of the game and ninth of the season came on a wrist shot on the power play at 1:56 of the second period to give the Canucks a 3-1 lead.
"His shot is unreal," said Daniel Sedin, who got the primary assist on the goal.
Boeser is the first Canucks rookie to score in three straight team games since Jason King from Nov. 3-8, 2003, according to the Elias Sports Bureau.
WATCH: [All Canucks vs. Flyers highlights]
"Boeser, everything he touches right now goes in," said Vancouver goaltender Jakob Markstrom, who made 36 saves. "It's really good."
Sven Baertschi and Loui Eriksson scored, and Henrik Sedin had two assists for the Canucks (10-8-3), who opened a six-game road trip after losing two straight.
Michal Neuvirth was pulled after allowing four goals on 22 shots in his first appearance since Nov. 4 for the Flyers (8-9-4), who have lost five straight (0-3-2). Brian Elliott replaced him and made 13 saves.