Lucas Alario fired in after 10 minutes as Leverkusen, without the injured Kai Havertz, scored with the first chance of the game. But, Bayern recovered from the early shock. Kingsley Coman curled in the equaliser in the 28th minute before the visitor struck twice in three minutes to turn the game around.
Leon Goretzka completed a sensational passing move in the 42nd minute and Serge Gnabry chipped the ball over keeper Lukas Hradecky on the stroke of half-time. Bundesliga top scorer Robert Lewandowski headed in Thomas Muller’s 20th assist of the season to seal Bayern’s ninth straight win.
In the 89th minute, 17-year-old Florian Wirtz cut the deficit for the home side with a superb goal.
Captain Christian Strohdiek netted a dramatic stoppage time equaliser to hand last-placed Paderborn a 1-1 draw away at high-flying RB Leipzig and keep alive its faint hopes of avoiding relegation.
Patrik Schick’s 27th-minute goal saw Leipzig lead, but its fortunes turned after defender Dayot Upamecano was needlessly sent off two minutes from the end of the first half when he petulantly kicked away the ball after a foul. The 21-year-old Frenchman had been booked earlier in the game, and his second yellow card ensured an early shower.
A goal in each half by Rouwen Hennings gave Fortuna Duesseldorf a 2-2 draw at home to 10-man Hoffenheim but Uwe Rosler’s side, which is third from bottom, will see it as two points dropped rather than one gained.
Hoffenheim got off to the worst possible start when striker Hennings headed the host into the lead in the fifth minute, shortly before visiting captain Benjamin Huebner was shown a straight red card for an altercation at a corner.
Munas Dabbur equalised in the 16th minute. Hennings had a second headed goal ruled out two minutes later as the Video Assistant Referee (VAR) spotted a foul in the build-up.
Steven Zuber put Hoffenheim ahead around the hour mark, but Hennings netted a penalty to secure the draw. On Friday, Freiburg defeated Champions League spot contender Borussia Monchengladbach 1-0.