The Flames, who had lost two in a row and are in last place in the Northwest Division, handed the Avalanche only their third setback in nine games.
Lee Stempniak put Calgary in front for good at 2-1 by tipping in a shot 3:57 into the second period.
Bourque scored on the power play less than 6 minutes later and clinched the victory with an empty-net goal with 58 seconds left in regulation. Bourque leads the Flames in scoring with five goals.
Miikka Kiprusoff stopped 34 shots to even his record at 3-3.
Jean-Sebastien Giguere, who had won his other two starts, made 31 saves for the Avalanche.
The only other four-goal effort from the Flames this season came against Montreal in the third game of the season.