Borussia Dortmund stretched its Bundesliga lead with a 2-0 win over Freiburg, and Bayern Munich kept pace with a 2-1 win at Werder Bremen on Saturday.

Paco Alcacer scored again for Dortmund — with an injury-time winner — as Lucien Favre’s team moved seven points clear of Borussia Moenchengladbach, which visits Leipzig on Sunday.

Serge Gnabry’s two goals were enough for Bayern to end its three-game run without a win. The six-time defending champion was holding on at the end, though, despite Bremen’s Niklas Moisander being sent off in second-half injury time.

Bayern goalkeeper Manuel Neuer, right, reacts besides team mate Jerome Boateng after Bremen's Yuya Osako scored his side's opening goal during the German Bundesliga soccer match between Werder Bremen and FC Bayern Munich in Bremen, Germany, Saturday, Dec. 1, 2018. (David Hacker/dpa via AP)
Bayern goalkeeper Manuel Neuer, right, reacts besides team mate Jerome Boateng after Bremen’s Yuya Osako scored his side’s opening goal during the German Bundesliga soccer match between Werder Bremen and FC Bayern Munich in Bremen, Germany, Saturday, Dec. 1, 2018. (David Hacker/dpa via AP)

Bayern remained nine points behind Dortmund but climbed to third, a point ahead of Eintracht Frankfurt, which hosts Wolfsburg on Sunday.

Gnabry broke the deadlock in the 20th minute. Joshua Kimmich sent the ball in for Gnabry to volley straight at Jiri Pavlenka, and the Germany forward scored at the second attempt from the rebound.

Bayern was shocked by Yuya Osako’s equalizer in the 33rd. Max Kruse crossed and Osako beat Jerome Boateng to the ball to head past goalkeeper Manuel Neuer. It ensured the Bayern captain conceded for the ninth straight game in the league since a 2-0 win over Schalke on Sept. 22.

Bayern's Serge Gnabry, 2nd right, celebrates with team mates Robert Lewandowski, left, Thomas Mueller, 2nd left, and Joshua Kimmich, right, after scoring his side's second goal during the German Bundesliga soccer match between Werder Bremen and FC Bayern Munich in Bremen, Germany, Saturday, Dec. 1, 2018. (David Hacker/dpa via AP)
Bayern’s Serge Gnabry, 2nd right, celebrates with team mates Robert Lewandowski, left, Thomas Mueller, 2nd left, and Joshua Kimmich, right, after scoring his side’s second goal during the German Bundesliga soccer match between Werder Bremen and FC Bayern Munich in Bremen, Germany, Saturday, Dec. 1, 2018. (David Hacker/dpa via AP)

Franck Ribery had to go off injured shortly afterward, but Kingsley Coman came on to make his return from a recurrence of the left-foot injury that kept him out of France’s World Cup win.

Thomas Mueller set up Gnabry’s second in the 50th, an injection of pace taking him past a defender to cross for Gnabry to score with a fortunate bounce off his shin.

Dortmund's Paco Alcacer celebrates after scoring his side's second goal in the last minute during the German Bundesliga soccer match between Borussia Dortmund and SC Freiburg in Dortmund, Germany, Saturday, Dec. 1, 2018. (AP Photo/Martin Meissner)
Dortmund’s Paco Alcacer celebrates after scoring his side’s second goal in the last minute during the German Bundesliga soccer match between Borussia Dortmund and SC Freiburg in Dortmund, Germany, Saturday, Dec. 1, 2018. (AP Photo/Martin Meissner)

Dortmund’s win was an edgy affair after the team failed to build on Marco Reus’ penalty five minutes before the break. The spot kick was awarded after a bad challenge on Jadon Sancho from Freiburg defender Dominique Heintz, who stood on the England forward’s right foot.

Jerome Gondorf almost equalized straight away with a free kick that crashed off the underside of the bar and came back down in front of the line. Dortmund’s Roman Buerki would have been powerless to stop it.

Lukasz Piszczek struck the underside of the crossbar late for Dortmund, before Alcacer finally sealed the win after some good work from Sancho and then Piszczek to set him up.

Freiburg head coach Christian Streich watches his team during the German Bundesliga soccer match between Borussia Dortmund and SC Freiburg in Dortmund, Germany, Saturday, Dec. 1, 2018. (AP Photo/Martin Meissner)
Freiburg head coach Christian Streich watches his team during the German Bundesliga soccer match between Borussia Dortmund and SC Freiburg in Dortmund, Germany, Saturday, Dec. 1, 2018. (AP Photo/Martin Meissner)

It was the Spanish striker’s ninth goal in his eighth league appearance.

Also, Stuttgart climbed off the bottom with a 1-0 win over Augsburg, and Hertha Berlin moved seventh with a 2-0 win at Hannover.

Dortmund goalkeeper Roman Buerki jumps for the ball during the German Bundesliga soccer match between Borussia Dortmund and SC Freiburg in Dortmund, Germany, Saturday, Dec. 1, 2018. (AP Photo/Martin Meissner)
Dortmund goalkeeper Roman Buerki jumps for the ball during the German Bundesliga soccer match between Borussia Dortmund and SC Freiburg in Dortmund, Germany, Saturday, Dec. 1, 2018. (AP Photo/Martin Meissner)

Hoffenheim hosts Schalke later Saturday.

___

Source: The Associated Press