The in-form striker hit twice after halftime to sink Thomas Tuchel's men, who failed to respond after going down to Thomas Muller's strike late in the first period
The hosts matched the league leaders throughout the first half, but fell away alarmingly after Thomas Muller put his side in the clear; and the Croatian striker further twisted the knife as he added two more after the interval.
Bayern enjoyed clear control of possession in the first 45, but struggled to translate that superiority into chances in the final third. Mainz defended enthusiastically and pulled no punches, resulting in two bookings before the interval as the tackles flew in across the pitch.
The hosts may have been on the back foot, but they did pose a significant danger on the counter. Shawn Parker had a handful of opportunities as he unsettled the Bayern defense, failing to hit the target after wriggling clear in the area to the relief of the travelling support.
An underwhelming fixture suddenly burst into life in the final minutes of the half. Javier Martinez enjoyed one of die Roten's first clear chances of the match when he connected with Toni Kroos' corner, but the Spaniard's header was stopped by Christian Wetklo and the keeper reacted well to claim the rebound with the midfielder closing in on goal. Despite the increase in pressure, however, it was still a surprise when Bayern snatched the lead.
In a rare moment of inattention from the Mainz defense, Kroos' well-weighted through-ball found a gap and swung into the path of the advancing Thomas Muller. The Germany international barely broke stride as he rounded Wetklo out wide, before delicately sliding the ball into the empty net from a rapidly decreasing angle.
The home team's challenge only became more fierce after the break, when a clinical Bayern doubled the advantage. David Alaba was the architect of the second, smashing a hole down the left with a brilliant run, and Mario Mandzukic was left with the easiest of finishes to convert the full back's low cross and leave his side in a dominant position.
Mainz was shambolic following Bayern's double strike, and the only question remaining appeared to be how many the Bundesliga leaders would add to their tally before the end of the match. Mandzukic popped up once again to make it three, heading past the despairing Wetklo after connecting with Phillipp Lahm's cross to the far post.
The rest of the match was all too easy for the Bavarians, who played the ball around at will against a demoralized opposition.
The win means Bayern temporarily opens up a 14-point lead over Bayer Leverkusen, in second place. Its challenger will hope to close the gap on Sunday, when it faces current champion Borussia Dortmund at home.