Bo Horvat and J.T. Miller both scored and had an assist for Vancouver (8-11-1).
Defenceman Jordie Benn and Nate Schmidt also scored for the Canucks, who improved to 2-3-1 versus the Flames this season.
Goaltender Braden Holtby stopped 35-of-36 shots for his first win since Jan. 28.
Andrew Mangiapane scored for Calgary (8-7-1).
Jacob Markstrom stopped 24 shots in the loss in his seventh straight start and 14th in Calgary’s 16 games this season.
Markstrom’s been Calgary’s best player so far this season, and compensated for the Flames’ many sluggish first periods.
But fatigue, perhaps exacerbated by a pair of second-period collisions with Canucks, appeared to set in for the tall Swede on Wednesday.
After allowing five goals on 29 shots, Markstrom was replaced by David Rittich near the eight-minute mark of the third period. Rittich stopped the four shots he faced.
Wednesday’s game was the fourth in a row between the two clubs. The Flames went 2-1 in Vancouver’s Rogers Arena before the series shifted to Scotiabank Saddledome.
Boeser scored on a Canucks 4-on-1 at 5:54 of the third period. The winger lasered a high shot over Markstrom’s glove for his 15th point and eighth goal in his last 11 games.
Calgary drew within one at 18:13 of the second period, but Vancouver pulled away again scoring twice in the final 78 seconds.
Vancouver’s pressure around Calgary’s net produced multiple chances for Schmidt to bang in a rebound at 19:06. Miller put a shot off the crossbar and in at 18:28.
Calgary’s Mangiapane drove in from the wing and dragged the puck in front of a sprawling Holtby to score on a sharp-angled shot at 18:13.
Markstrom charged out of Calgary’s net to challenge Horvat streaking up the middle, but the goalie was too late to cut off the angle.
Horvat got a shot away as the players made contact for a 2-0 Vancouver lead at 7:37 of the second period.
Markstrom also abandoned his net in the first minute of the period attempting a poke check on Vancouver’s Tanner Pearson in full stride. The two men collided hard near the face-off circle.
The Flames have led after the first period in just five of their 16 games this season.
Benn scored his first of the season at 1:46 of the first period off a neutral-zone turnover by Flames’ Dominik Simon.
Horvat faked a shot and fed Benn in the slot to beat Markstrom’s glove.
The Flames take on the Edmonton Oilers in a back-to-back games on Friday at home and Saturday in Edmonton.
The Canucks are at home to the Winnipeg Jets on Friday and Sunday.
Notes: Flames centre Mikael Backlund was back in the lineup after sitting out Monday’s 4-3 overtime win in Vancouver with a lower-body injury . . . Horvat has 13 points (7-6) in his last 16 games.