If you're running Fire Punch, then you don't "breeze through" Mega Venusaur, especially physically defensive variants, so as you said, stick with Flare Blitz as it 2HKOs:First, apologies for the necro.
Second, I thought of a Charizard X set that deals with almost all stall teams.
Charizard @ Charizardite X
EVs: 252 Atk, 120 Spe, 136 HP
- Focus Punch
- Fire Punch / Flare Blitz
This set uses the almost never seen on Charizard SubPunch to break stall. It deals with SkarmChans well, 2HKOing Skarmory with Fire Punch and OHKOing w/ Flare Blitz and OHKOing Chansey, while also 2HKOing Quagsire. Another Charizard counter, Rhyperior, gets 2HKOed by Focus Punch. Heatran is straight up OHKOed, while Mega Venusaur at its most physically defensive is 2HKOed by Flare Blitz. Not even most stall team's glue, Doublade, avoids a 2HKO, and Chesnaught and Tangrowth both die as well. There is AFAIK literally three pokemon that can be viably used on stall to counter it - Physically defensive Arcanine, Dragonite, and Salamence, all of whom are rare on a stall team. The best part, however, is that standard Zard X is countered by Quagsire or sometimes Heatran or MegaSaur, all of whom this set breezes through.
tl;dr SubPunch Charizard X = Stall dies.
252+ Atk Tough Claws Mega Charizard X Fire Punch vs. 252 HP / 240+ Def Thick Fat Mega Venusaur: 116-138 (31.8 - 37.9%) -- 89.8% chance to 3HKO
Also, Focus Punch is barely within the 2HKO range against Quag, which means you MUST be behind a sub while Quag is switching in to the first Focus Punch to get the second one off before it recovers (if it even 2HKOs to begin with), and if you're not behind a sub, then expect a Scald or an EQ:
252+ Atk Tough Claws Mega Charizard X Focus Punch vs. 252 HP / 252+ Def Quagsire: 191-225 (48.4 - 57.1%) -- 45.3% chance to 2HKO after Leftovers recovery