Harry Kane scored a late winner as Bundesliga champions Bayern fought back from 3-0 down at Mainz to win 4-3 and extend their lead at the top of the table to 18 points.
Vincent Kompany's men trailed 3-0 at the break to goals from Dominik Kohr, Paul Nebel and Sheraldo Becker, but Nicolas Jackson reduced the deficit before Michael Olise and Jamal Musiala hauled Bayern level and set the stage for fellow substitute Kane to win it with his 33rd league goal of the campaign.
Tim Lemperle's winner on the stroke of half-time maintained Hoffenheim's pursuit of the top three as they saw off Hamburg 2-1 after Robert Glatzel's penalty had cancelled out Fisnik Asllani's opener.
Patrik Schick's double kept Bayer Leverkusen in the hunt for a top-four finish courtesy of a 2-1 win at Cologne, while Ritsu Doan came off the bench to earn Eintracht Frankfurt a 1-1 draw at Augsburg.
Goals from Budu Zivzivadze and Eren Dinkci handed bottom-of-the-table Heidenheim a 2-0 home victory over St Pauli, but Wolfsburg remain in trouble after a 0-0 home draw with Borussia Monchengladbach.
Substitute Marcus Rashford scored his third goal in six games as Barcelona moved to the brink of the LaLiga title following a 2-0 win at Getafe.
Victory moved Hansi Flick's side, who had gone ahead through Fermin Lopez before Rashford struck with 16 minutes remaining, 11 points clear of Real Madrid at the top of the table.
Alexander Sorloth was fourth-placed Atletico Madrid's match-winner as they came from behind to beat 3-2 at the Riyadh Air Metropolitano.
Aitor Paredes had headed the visitors into a 23rd-minute lead, but Antoine Griezmann levelled four minutes after half-time and Sorloth put Atleti ahead before doubling his tally in stoppage time, only for Gorka Guruzeta to give the visitors late hope.
Toni Martinez's second-half double eased Alaves two points clear of the relegation zone as they recovered from Jan Virgili's opener to beat Real Mallorca 2-1, while goals from Largie Ramazani and Umar Sadiq saw Valencia beat Girona by the same score.
Goncalo Ramos was sent off as Paris St Germain went six points clear at the top of Ligue 1 after a 3-0 win at Angers.
The visitors were in complete control at Stade Raymond Kopa courtesy of goals from Lee Kang-in, Senny Mayulu and Beraldo when frontman Ramos was dismissed for a second bookable offence with 16 minutes remaining.
Two goals from Roman Yaremchuk and a third from Corentin Tolisso edged third-placed Lyon to a 3-2 home win over struggling Auxerre, who scored through Sinaly Diomande and Bryan Okoh.
Emersonn's last-minute header handed Toulouse a 2-2 draw as Monaco squandered a 2-0 lead to pass up a chance to climb into the top six.
Les Monegasques led through Jordan Teze and Lamine Camara with just 18 minutes played, but Jacen Russell-Rowe dragged the hosts back into it before the Brazilian snatched a point.
In Serie A, Donyell Malen and Neil El Aynaoui fired Roma to within two points of the top four after a 2-0 win at Bologna.
Parma substitute Nesta Elphege edged basement boys Pisa to the brink of relegation as his 82nd-minute goal clinched a 1-0 win, while Hellas Verona and Lecce fought out a 0-0 stalemate.