Dortmund are five points off the top of the table, after Hamburg battled to victory with two goals from South Korea's Son Heung-min.
The hosts needed just two minutes to score when Rafael van der Vaart was given far too much space on the left to cross and Son beat Mats Hummels to head in his second goal of the season.
Dortmund instantly took control, launching a barrage of attacks until halftime but neither Marco Reus nor Robert Lewandowski could beat keeper Rene Adler.
Ivan Perisic did it better, lobbing in the equaliser from the left 21 seconds after the restart. In a frantic five minute spell, however, the hosts struck twice through Ivo Ilicevic and Son before Croat Perisic cut the deficit on the hour.
Dortmund are on seven points along with fellow Champions League competitors Schalke while Hamburg, who hold the record for the longest unbeaten run of 36 league games from 1983, managed to lift themselves off the bottom after three straight defeats.
"The game was a real show," said Dortmund coach Juergen Klopp. "We had problems pushing through our game at the beginning and Hamburg were clever, taking their few chances well."Flawless Bayern Munich struck twice in three minutes to beat Schalke 04 2-0 on Saturday and stay top of the Bundesliga with four wins from four as rivals Borussia Dortmund lost 3-2 at Hamburg SV to end a 31-match unbeaten run.
Visitors Bayern, fresh from their opening 2-1 Champions League win over Valencia on Wednesday, took the lead in the 55th minute when in-form Toni Kroos - set up by Thomas Mueller - curled a low shot from 14 metres past keeper Lars Unnerstall.
Mueller then scored the second goal himself, threading the ball through the legs of defender Christian Fuchs on the right and slipping a shot between two others for his fourth goal of the season to silence the 61,000 crowd at the Auf Schalke Arena.
Bayern Munich struck twice in three minutes to beat Schalke 2-0 and stay top of the league with four wins from four.
Flawless Bayern, who were without injured Franck Ribery, have won all games in every competition so far this season and are on 12 points along with promoted Eintracht Frankfurt who beat Nuremberg 2-1 on Friday.
"We saw a very intense match from both teams and Schalke stood up very well especially in the first half," said Bayern coach Jupp Heynckes.
"We showed our class in the second half, dominated and deserved to win.
"It is good news that we have opened up a five-point lead (over Dortmund) but the championship is a long marathon of 34 games," he said.
Schalke, who showed none of the attacking flair that earned them a 2-1 win at Olympiakos in their midweek Champions League group match, imploded following the quickfire goals and failed to threaten the Bayern goal.
Wolfsburg's Emanuel Pogatetz scored a curious own goal in their 1-1 draw at home to Greuther Fuerth when he failed to clear a deep kick from Greuther keeper Max Gruen and connected with the ball to send it past his charging keeper Diego Benaglio.
Ivica Olic levelled three minutes before the break after Thomas Kahlenberg's shot hit the bar and bounced towards the Croat, who had no problem heading it in from five metres out.
Mainz climbed up to 11th place with a 2-0 home win over Augsburg while promoted Fortuna Duesseldorf, still undefeated, shared the points with Freiburg in their goalless draw.
Hanover will move two points behind Bayern and Frankfurt with a win at troubled bottom club Hoffenheim on Sunday while Borussia Moenchengladbach take on Bayer Leverkusen and Werder Bremen welcome Stuttgart.