BERLIN, Feb 5, 2011 (AFP) - Bayern Munich's title aspirations suffered a major blow on Saturday as relegation-threatened Cologne hit back from 2-0 down to inflict a 3-2 defeat on the defending champions.
Bayern were cruising after first-half goals by Germany striker Mario Gomez, his 16th in 19 league matches, and Turkey midfielder Hamit Altintop.
Gomez became the league's top-scorer after he latched onto a diagonal pass from Thomas Mueller to beat ex-Bayern goalkeeper Michael Rensing on 22 minutes, with Altintop doubling their lead shortly before half-time.
But Cologne refused to go down without a fight.
They pulled a goal back through midfielder Christian Clemens on 55 minutes, then equalised when Slovenian striker Milivoje Novakovic headed home seven minutes later.
Novakovic produced a superb solo effort for his second, his seventh goal in 15 league games, when he slotted home the winner on 73 minutes.
"We saw a completely different Cologne from the start of the second half with our fantastic fans behind us," said delighted Cologne captain Lukas Podolski.
"The way we came from behind to win was sensational."
Furious Bayern coach Louis van Gaal accused his side of throwing the game away.
"Today we wasted a big chance to move up the table because all our rivals lost except Hanover," he said.
"If you play the first half time as masterfully as we did, it is unbelievable that we gave the game away. This is the fourth or fifth time we have done this. We tried everything after we went 3-2 down, but it was too late by then."
A win in Cologne would have put Bayern second as Bayer Leverkusen lost 1-0 at 10-man Nuremberg, but the defeat leaves the champions fifth and 15 points behind league leaders Dortmund.
Cologne remain in the bottom three, despite their heroics.
Second-from-bottom Stuttgart came from 2-0 down to steal a 3-2 win at bottom side Moenchengladbach in dramatic fashion after Timo Gebhart netted an 87th-minute penalty.
'Gladbach had Brazil defender and goal scorer Dante sent off for a second yellow card in the melee just before the penalty was awarded.
Veteran Michael Ballack was left fuming after being substituted in the second half of Leverkusen's defeat at Nuremberg, 24 hours after being left out of the Germany squad for next week's friendly against Italy.
The 34-year-old has not played for Germany since March 2010 and this was only his second start after four months out with a fractured leg as his side lost, but stay second in the table.
Leaders Dortmund stay 12 points clear at the top after being held to a goalless draw by Schalke on Friday.
Hanover are fourth and stayed in the fight for a European place for next season with a 1-0 win at Steve McClaren's Wolfsburg.
Ten-man Hoffenheim were given a fright at home as they beat Kaiserslautern 3-2 having held a 2-0 lead.
Bremen's ex-Chelsea striker Claudio Pizarro equalised in injury time to seal a 1-1 draw with Mainz which kept his team out of the bottom three.
On Friday, Germany goalkeeper Manuel Neuer produced an outstanding performance to earn Schalke 04 a point after a goalless draw at Dortmund with ten clear saves on a busy night.
With Germany set to face Italy in a friendly here at Dortmund's Signal Iduna Park on Wednesday, Neuer boosted his chances of facing the Italians in the battle with Leverkusen's goalkeeper Rene Adler for Germany's number one shirt.
Sunday's match between St Pauli and Hamburg in the north German derby has been called off due to heavy rain.