The Flames remain fourth in the Pacific Division but are just one point back of both the Edmonton Oilers and San Jose Sharks, who each hold a game in hand.
Sven Andrighetto scored both goals for Colorado. His second came with 1:54 remaining and the goalie pulled. The last-place Avalanche have lost six games in a row overall and nine straight on the road.
Handed a power play 23 seconds into the game, Calgary took advantage with Monahan's shot deflecting in off the stick of defenseman Erik Johnson.
The score stayed that way until 4:33 of the second when Ferland took a feed from Gaudreau and fired in his 15th goal. That goal was the culmination of a stretch of extended pressure that began when Johnson coughed up the puck in the neutral zone leading to a 3-on-1.
The Avs got on the scoreboard at 3:06 of the third period on a power play when Johnson's shot missed the net, but Andrighetto swatted the lively rebound off the end boards past Brian Elliott.
Calgary restored its two-goal cushion less than two minutes later on a power play. Off the rush, Monahan zipped a cross-ice pass across to Brouwer, who beat Calvin Pickard inside the goal post. Brouwer's third goal in the past four games gives him 13 on the season.
Elliott made 24 saves. The Flames goaltender is 13-1-0 in his past 14 starts.
Pickard had 23 stops for Colorado.
Gaudreau's assist was his 200th point, which comes in 226 games. It's the fastest a Flame has reached that milestone in over 25 years. ... Flames rookie defenseman Rasmus Andersson, still awaiting his first NHL action, was a scratch for the ninth game since being summoned from Stockton (AHL). ... Calgary improved to 31-0-1 when leading after two periods.