Second-placed Bayer Leverkusen slumped to a 3-2 defeat at Hannover 96 on Sunday, snapping their four-game winning streak and dropping 11 points behind leaders Bayern Munich.
Hannover's Szabolcs Huszti was awarded two penalties and converted both himself to help his team to their first win in three games and lift them to 10th on 23 points, days after coach Mirko Slomka signed a contract extension to 2016.
Leverkusen, second on 30 with Bayern on 41, got off to a flying start after Gonzalo Castro drilled in a cutback from Lars Bender after two minutes on a soaked and heavy pitch.
Huszti drew the hosts level in the 20th minute, sending Bernd Leno the wrong way to convert a penalty after he was brought down by Manuel Friedrich.
Europa League competitors Hanover then took the lead as forward Mame Diouf, left wide open in the box, headed in a Jan Schlaudraff cross in the 57th.
Stefan Kiessling retaliated instantly with his 10th goal of the season, a powerful header, but it was the hosts who remained more aggressive.
The pressure paid off with Huszti awarded a second penalty when Stefan Reinartz clumsily brought him down. The 29-year-old beat Leno again to hand his team their first win in three games.
"I am happy it worked out with the victory today," said Slomka after his 100th game on the Hannover bench. "This win was really good for us. You could see our battling attitude and we needed that against tough Leverkusen."
In the only other game on Sunday, Venezuelan Juan Arango's outrageous lob from about 40 metres sealed Borussia Monchengladbach's 2-0 win over Mainz 05 to move up to eighth on 24 points.
Substitute Mike Hanke had put Gladbach into the driving seat, tapping in at the far post.
Bayern Munich eased past Augsburg 2-0 on Saturday to stay in control a week before the winter break with their 13th victory in 16 league games.
Champions Borussia Dortmund lost 3-2 to VfL Wolfsburg after a controversial penalty and red card to defender Marcel Schmelzer. They stay third on 27 points.
Berlin will stage Champions League final for the first time in 2015
Borussia Dortmund's Mario Gotze ruled out of Champions League final against Bayern Munich
Manchester United centre-back Rio Ferdinand signs one-year contract
Malaga coach Manuel Pellegrini will leave the La Liga club at the end of the current season
Ten years on, the legends speak to FFT
Your questions answered by an A to Z of legends
He's here, he's there, he's...
The cost of Premier League away travel
Nike CR7 IX for you
FourFourTwo is brought to you by Haymarket Consumer Media & FourFourTwo is part of Haymarket Sport
| International Licensing | © Haymarket Media Group 2010