BERLIN, April 22 (Xinhua) -- Bayern dropped points for the second time in row as they were held to a 2-2 draw by Mainz while Raphael Guerreiro's late winner helped Dortmund to edge Monchengladbach 3-2 at the 30th round in Bundesliga in Saturday.
Carlo Ancelotti's men bounced back twice to secure a two-all draw against spirited Mainz, who extended Bayern's winless run to two consecutive games.
The "Nullfuenfer" caught a fairy tale start at outsold Allianz Arena as Bojan Krkic benefited on Arturo Vidal's misplaced pass to slot home the opener from the edge of the box with three minutes played.
Bayern recovered from the setback in the 16th minute when Arjen Robben made use of Franck Ribery's through ball to slot home from sharp angle into the far post corner.
However, the German giants had to run behind a deficit again after Mainz converted a foul-play penalty through Daniel Borsinski, as Joshua Kimmich felled Yoshinori Muto inside the box in the 40th minute.
After the restart, Bayern piled on the pressure and they eventually restored parity as Thiago Alcantara completed a solo run with a goal from 18 meters in the 73rd minute.
The "Bavarians" pressed frenetically for the winner but all their efforts remained fruitless as Mainz kidnapped one point from Bayern.
With the draw, Bayern remain atop the standings with a nine-point advantage while Mainz climb on the 13th position of the Bundesliga standings.
Borussia Dortmund recaptured the third place after getting the better of Monchengladbach following a 3-2 goal festival on the road.
The "BVB" started highly motivated into the clash, knowing that a win would lift them on the third place. Thus, Dortmund needed only 10 minutes to break the deadlock, as Mahmoud Dahoud' s foul to Christian Pulisic inside the box allowed Marco Reus to mark the opener from the spot.
Thomas Tuchel's men remained in control of the proceedings nonetheless Monchengladbach were able to equalize the scores through Lars Stindl, who utilized Andre Hahn's assist before the break.
To make things worse for Dortmund, Monchengladbach turned the tides after the restart as Marcel Schmelzer cleared the ball into the wrong goal with three minutes into the second half.
Nevertheless, Dortmund remained unimpressed and responded with Bundesliga top striker Pierre-Emerick Aubameyang, who marked his 27th goal of the season only two minutes after his fielding to level the scores in the 59th minute.
Patrick Herrmann had the golden chance for Monchengladbach to score the winner but goalie Roman Buerki defused his effort. Dortmund had the last laugh as Raphael Guerreiro nodded home Gonzalo Castro's free kick to wrap up all three points.
With the 16th win of the campaign Dortmund ousted Hoffenheim from the third spot whereas Monchengladbach slumped to the 10th place.
Elsewhere, fifth-placed Hertha Berlin remain on track for a berth in Europe as they moved 1-0 past Wolfsburg on Vedad Ibisevic's sole goal.
Werder Bremen reaped their second straight win after they came back twice against relegation-threatened Ingolstadt to clinch a 4-2 win thanks to four goals from Max Kruse.
Eintracht Frankfurt ended their 10-game winless streak as Marco Fabian was on target twice to down Augsburg 3-1, and last-placed Darmstadt shocked Hamburg 2-1.
The following games conclude the 30th round in Bundesliga on Sunday: Freiburg encounter Bayer Leverkusen, and Schalke encounter runner-up Leipzig.