Toni Kroos and Mario Gotze netted inside the first 15 minutes to put Pep Guardiola's men on their way.
Although Adrian Ramos pulled a goal back from the penalty spot midway through the second half, Franck Ribery's 79th-minute goal wrapped up the win in style and gave them the crown with seven games to spare.
Bayern would have been celebrating even had they lost, as the clash between local rivals Borussia Dortmund and Schalke ended goalless.
Pride and second spot was up for grabs in the 144th Revierderby, but neither team could make a breakthrough.
In-form Wolfsburg enhanced their own top four hopes with a 3-1 win at Werder Bremen.
Junior Malanda and Ivan Perisic scored in the first 10 minutes to give the visitors control.
Sebastien Prodl pulled a goal back six minutes later, but Maximilian Arnold made the points safe for Wolfsburg 10 minutes from time.
At the other end, bottom club Eintracht Braunschweig picked up a crucial three points with victory over European hopefuls Mainz - again by 3-1.
Dominick Kumbela's 18th minute goal gave Braunschweig the lead but Nicolai Muller levelled two minutes later.
However, Havard Nielsen restored the home side's advantage just before the break, before Kumbela got his second and his team's third 13 minutes from time to move Braunschweig to within three points of safety.
Mainz, who would have gone joint fourth with victory, remain seventh as a result of this setback.