Leipzig s Andre Silva and Yussuf Poulsen celebrate after Silva s opening penalty goal during the Bundesliga soccer match between RB Leipzig and FSV Mainz 05 in Leipzig. AP
Patrik Schick's 17th goal of the season wasn't enough for Leverkusen, which was fortunate to emerge with a 2-2 draw against Union Berlin as the visitor twice hit the post late on.
Freiburg, which spent the league's winter break in third place, drew against relegation-threatened Arminia Bielefeld 2-2 despite scoring first through Janik Haberer and Jeong Woo-yeong.
American forward Ricardo Pepi made his debut as a second-half substitute in a 3-1 defeat at Hoffenheim.
Also, Stuttgart drew at last-placed Greuther Furth 0-0.
Borussia Dortmund hoped to cut Bayern Munich's lead to six points with a win at Eintracht Frankfurt in the late game.
In Leverkusen, Schick rewarded the home team's early dominance against Union with the opener in the 39th, slotting the ball in from a narrow angle after Andreas Luthe saved Moussa Diaby's initial effort. It was Schick's ninth in Leverkusen's last five Bundesliga games.
However, the visitors equalized from their period of pressure before the break. Lukas Hradecký pulled off two fine saves in quick succession to deny Christoph Trimmel, then Kevin Behrens, but was powerless to stop Grischa Promel scoring at the third attempt.
Union coach Urs Fischer made two changes at the break. Promel scored again in the 49th, and Luthe thrice denied Leverkusen a response.
Union's Max Kruse struck the top corner of the post in the 78th, then Jonathan Tah finally equalized in the 84th with a header to Karim Bellarabi's cross.
Union came closer to a late winner, with Andreas Voglsammer hitting the post, then missing another chance in injury time, before Bastian Oczipka struck the post again.
Bayern resumed the league with a 2-1 loss at home to Borussia Monchengladbach on Friday.
(For more sports news and updates, follow Ahram Online Sports on Twitter at @AO_Sports and on Facebook at AhramOnlineSports.)