Bayern, which slumped to a 3-1 defeat at Bayer Leverkusen last weekend, bounced back with a comprehensive defeat of Schalke, which could easily have lost by more.
Robert Lewandowski, criticized by former Germany midfielder Dietmar Hamman last week, was involved in all three goals, scoring one to lift his season tally to 13.
Lewandowski caused an own goal from Jeffrey Bruma in the 11th minute and restored Bayern's lead in the 27th, two minutes after Ahmed Kutucu scored with Schalke's first foray forward. Midfielder Weston McKennie set Kutucu through on a counterattack.
Serge Gnabry sealed Bayern's win before the hour-mark after Lewandowski inadvertently set him up with a bicycle kick. Canadian Alphonso Davies was subbed on in the 88th minute but did not score.
Moenchengladbach, which had been second, lost to Hertha Berlin 3-0. Gladbach had previously won all nine of its home games this season.
Also, Hannover defeated 10-man Nuremberg 2-0 in a bottom-of-the-table match, Frankfurt drew at Leipzig 0-0, and Freiburg drew with Wolfsburg 3-3.