Borussia Dortmund squandered a three-goal lead and drew with Hoffenheim 3-3 at home then watched Bayern Munich cut its lead in the Bundesliga to five points on Saturday.
Bayern took advantage of Dortmund's second successive league slip-up by beating Schalke 3-1 in the late game, lifting the six-time defending champion back to second place.
Jadon Sancho starred for Dortmund in the absence of injured captain Marco Reus, but instead of putting the pressure on Bayern with what would have been a 10-point gap ahead of the late game, they allowed Hoffenheim to come back.
"A very bitter outcome," Dortmund midfielder Mario Goetze said.
Dortmund, which drew at Eintracht Frankfurt last weekend, was missing coach Lucien Favre due to illness, and with Reus also out due to a muscular injury in Tuesday's German Cup exit to Werder Bremen, there were fears of a tough game against old rival Hoffenheim, which is fighting for European qualification.
But those fears seemed misguided with Sancho sparkling, particularly in the first half.
The 18-year-old English forward had an early goal ruled out by the video referee but opened his account with a fine finish from a narrow-angle in the 32nd.
Sancho was denied a second by Oliver Baumann but Goetze prodded home the rebound before the break.
Sancho was also involved in Dortmund's third, setting up Goetze with his heel before Goetze pulled the ball back for Raphael Guerreiro to seemingly seal the win in the 67th minute.
Hoffenheim didn't give up, however.
Sancho struck the post before Ishak Belfodil scored for the visitors in the 75th. Eight minutes later, Pavel Kaderabek grabbed another. Belfodil equalized with his second goal in the 87th.
"When you lead 3-0 at home it shouldn't happen. We played well for long periods, didn't allow many chances. It's bitter how it worked out," Goetze said.
Dortmund, which squandered a four-goal lead in a dramatic 4-4 draw with Schalke last season, next visits Tottenham in the Champions League on Wednesday.
BAYERN BITES BACK
Bayern, which slumped to a 3-1 defeat at Bayer Leverkusen last weekend, bounced back with a comprehensive defeat of Schalke, which could easily have lost by more.
Robert Lewandowski, criticized by former Germany midfielder Dietmar Hamman last week, was involved in all three goals, scoring one to lift his season tally to 13.
Lewandowski caused an own goal from Jeffrey Bruma in the 11th minute and restored Bayern's lead in the 27th, two minutes after Ahmed Kutucu scored with Schalke's first foray forward. Midfielder Weston McKennie set Kutucu through on a counterattack.
Serge Gnabry sealed Bayern's win before the hour-mark after Lewandowski inadvertently set him up with a bicycle kick.
Moenchengladbach, which had been second, lost to Hertha Berlin 3-0. Gladbach had previously won all nine of its home games this season.
Also, Hannover defeated 10-man Nuremberg 2-0 in a bottom-of-the-table match, Frankfurt drew at Leipzig 0-0, and Freiburg drew with Wolfsburg 3-3.