Harry Kane scored two first-half goals as Bayern Munich beat promoted Heidenheim 4-2 on Saturday, sending the Bavarians to the top of the table.
Heidenheim replied with two goals in three second-half minutes to equalise and Bayern needed late goals from Raphael Guerreiro and Eric Maxim Choupo-Moting to secure victory.
Bayern finish Saturday atop the table but Bayer Leverkusen -- who have won 15 and drawn one of their 16 matches in all competitions this season -- can return to the top with a win on Sunday over Union Berlin.
"It was a changing match," said Thomas Mueller. "At one point we had it in our grip, then we didn't, then we did again.
"What was nice is that we were able to react, that we managed to switch to a higher gear.
"It brought us to the top of the table and I hope that Leverkusen drop points sometime."
Kane now has 17 goals in 11 league games since joining the German champions from boyhood club Tottenham in the summer.
"I'm enjoying it," said Kane after the match, calling the result "an important victory that probably not many people are going to remember in a few weeks but these are the games you have to make sure you win."
Kane wasted no time in getting on the scoresheet, collecting the ball with his back to goal and scoring on the turn for the opener after 14 minutes.
Kane doubled up shortly before half-time, heading in unmarked from a corner.
With Bayern cruising, manager Thomas Tuchel made three changes shortly after half-time and within 10 minutes the visitors were level.
Tim Kleindienst and Jan-Niklas Beste scored in a three-minute period, the latter after a mistake from Kim Min-jae, bringing the score to 2-2 with 20 minutes remaining.
With Bayern wobbling, former Dortmund defender Guerreiro struck his first goal for the German champions, before Choupo-Moting scored with five minutes remaining to seal the win.
"Today I'm extremely happy about the three points," Tuchel said ahead of the international break. "The feeling of waking up after a win, you can't top it."
- 'Shown our limits' -
Borussia Dortmund lost 2-1 at Stuttgart, the returning Serhou Guirassy giving the home side victory with a late penalty, his 15th goal of the season to stay hot on Kane's heels.
Dortmund manager Edin Terzic selected the same XI who managed a hard-fought 2-0 win against Newcastle in the Champions League on Tuesday and it showed, with the lethargic visitors struggling to contain the home side.
Visiting goalkeeper Gregor Kobel gave away an early spot-kick but stopped Chris Fuehrich's tame effort, becoming the first Dortmund stopper in a decade to save a penalty in the league.
The visitors did open the scoring with their first shot on target, Niclas Fuellkrug tapping in a ball which former Dortmund defender Dan-Axel Zagadou allowed to run through his legs.
Stuttgart struck back shortly before half-time, Jamie Leweling threading the ball perfectly for Brighton loanee Deniz Undav to score.
Guirassy, who missed two league games with a hamstring complaint, came off the bench late and converted the penalty for the win.
Dortmund have lost two and drawn one of their past three league games and sit eight points behind Bayern with just 11 matches played.
"You have to admit that we're being shown our limits by some opponents at the moment," Fuellkrug told Sky. "We lacked a lot, on a number of levels."
Terzic hit back, saying "far too often we try and sort things out later on the mic rather than doing so on the pitch."
In Saturday's late game, Bochum drew 1-1 at home with Cologne, Davie Selke's second-half goal cancelling out a first-half strike from Lukas Daschner, leaving the visitors dead last.
Elsewhere, Augsburg held Hoffenheim to a 1-1 draw at home. Ermedin Demirovic's goal earned the hosts a point after they fell behind to former Manchester United forward Wout Weghorst's early strike.
Darmstadt and Mainz played out a scoreless draw.