With 107 points, the Canucks also tied the New York Rangers for most points in the NHL in the race for the Presidents' Trophy.
Ebbett deflected in defenseman Sami Salo's shot from in front of the Calgary net.
The winger was playing his first game since January, when he broke his collarbone. He missed 35 games.
The Canucks earned their sixth straight win — all without injured scoring star Daniel Sedin (concussion) — and moved past the St. Louis Blues in the West. The Blues lost to the Blue Jackets on Saturday night.
The Flames were eliminated from playoff contention.
Max Lapierre and Marc-Andre Gragnani also scored for Vancouver.
Olli Jokinen and Mike Cammalleri scored for the Flames, who squandered a 2-1 lead.