Dutch winger Arjen Robben netted a hat-trick as Bayern Munich broke their losing streak with a 6-0 rout of Hamburg on Saturday, while leaders Borussia Dortmund were beaten 1-0 at Hoffenheim.
After Bayern boss Louis van Gaal was told last Monday that his contract will be terminated at the end of the season - a year earlier than planned - Bayern secured their biggest win of the season following three straight defeats.
"Who would have thought this, eh? Certainly not my friends from the media," gloated van Gaal, whose side host holders Inter Milan in the Champions League on Tuesday. "But that is football.
"In the beginning, we played well and we could have gone into the half-time break behind. Fortunately, that didn't happen and I am very glad we put in a good performance. This is a good preparation for Inter Milan."
Bayern started strongly at Munich's Allianz Arena and hit the woodwork three times in the first half before Robben netted his first goal after 40 minutes.
He curled in a direct free-kick on 47 minutes and completed his hat-trick eight minutes later after French winger Franck Ribery tore through the Hamburg defence and squared to the Dutchman, who rifled home.
Not to be outdone, Ribery then scored his first goal since December when he outpaced the Hamburg defence and chipped home on 64 minutes.
Germany midfielder Thomas Mueller scored the fifth with 10 minutes remaining after a great pass from Turkey's Hamit Altintop split the Hamburg defence.
To complete the humiliation, Ribery teased the defence and then saw his low cross deflected in off the legs of Hamburg captain Heiko Westermann in the 85th minute.
The league's top side Dortmund were beaten for only the third time this season through a second-half goal from Hoffenheim striker Vedad Ibisevic.
"This game was predestined for such a result," said Dortmund coach Jurgen Klopp. "We were better in nearly all areas, but we didn't make it count.
"Our approach to the game was right, so I am not worried by our first defeat of the year."
With second-place Bayer Leverkusen at Mainz on Sunday, Dortmund keep their 12-point lead at the top, while defending champions Bayern are still 16 points off the pace despite their win in Munich.
Schalke, who booked their place in the Champions League quarter-finals in mid-week, beat Eintracht Frankfurt 2-1 to ease the pressure on coach Felix Magath after last week's reports he is set to be fired.
The Royal Blues' bosses have neither confirmed nor denied the reports and there were plenty of banners in support of Magath at the Veltins Arena.
Spain's Raul earned his side a first-half penalty, which was netted by Jose Manuel Jurado, before Greek defender Georgios Tzavellas equalised in the second half.
Greek striker Angelos Charisteas scored the winner in the 84th minute - 52 seconds after coming off the bench.
Mid-table Nuremberg picked up their sixth win in seven games with a 2-1 win at Wolfburg, which dropped Wolves into the relegation zone, while Kaiserslautern won 2-1 at home to Freiburg to escape the bottom three.
Werder Bremen, who are just two points above the drop zone, host bottom club Borussia Moenchengladbach on Saturday night.
Cologne picked up their sixth straight league win at home with a 4-0 victory over Hanover on Friday night.