Leaders Borussia Dortmund suffered a surprise draw, Bayern Munich hammered seven past Hoffenheim and Borussia Monchengladbach's Bundesliga title hopes suffered a setback.
Cologne boosted their survival hopes with a slender home success over fellow strugglers Hertha Berlin, while Mainz and Wolfsburg also picked up three points at home.
Mario Gomez scored a hat-trick and Arjen Robben also scored twice as Bayern warmed up for a UEFA Champions League date with Basel by thumping Hoffenheim 7-1 at the Allianz Arena.
Germany international striker Gomez opened the scoring after just five minutes, while it was 3-0 by the 18th minute following Robben's penalty and Toni Kroos' goal.
Robben scored another on 29 minutes before Gomez completed his hat-trick with goals either side of half-time.
Franck Ribery notched the seventh on 58 minutes before Hoffenheim snared a consolation, although that was scored by a Bayern player following Luis Gustavo's 85th minute own goal.
Reigning champions Dortmund are now only five points clear of Bayern after being held to a 0-0 draw away by struggling Augsburg.
Third-placed Monchengladbach endured a frustrating afternoon after being held to a 0-0 draw at home by lowly Freiburg.
Reported Arsenal target Lukas Podolski was sent off as Cologne beat Hertha 1-0 at home in a match which produced three red cards.
Christian Clemens scored the only goal on 36 minutes before Cologne's Mato Jajalo and Podolski, along with Hertha's Levan Kobiashvili, were sent off in the second half.
Bayer Leverkusen followed up their mauling by Barcelona in midweek with a 3-2 reverse at mid-table Wolfsburg.
Stefan Kiessling had given Leverkusen a third minute lead, but Wolfsburg were in front before half-time through goals from Patrick Helmes and Ashkan Dejagah.
Michal Kadlec's own goal just past the hour mark put Wolfsburg further ahead before substitute Eren Derdiyok pulled a goal back in injury-time.
Mainz saw out the closing stages with 10 men to record a 2-1 home win over Nurnberg which leaves both teams in mid-table.
Nicolai Muller gave Mainz the lead only two minutes into the game before the in-form Mohamed Zidan doubled the advantage on 22 minutes.
Substitute Daniel Didavi got Nurnberg back into the game on 64 minutes and Adam Szalai's dismissal for a second bookable offence with six minutes to go left Mainz hanging on.