It was a nightmarish afternoon for the goalkeepers who were at fault for all three goals.
Bayern Munich, chasing a sixth successive title, duly won 2-0 at Mainz 05 with first-half goals from Franck Ribery and James Rodriguez.
The win extended their lead at the top to 18 points, and it was their tenth successive win in all competitions.
Mario Gomez scored his first goal since his return to VfB Stuttgart to give them a 1-1 draw at VfL Wolfsburg — the club he left in December.
Ademola Lookman scored on his debut to give RB Leipzig a late 1-0 win at Borussia Moenchengladbach.
Lookman, 20, signed on loan from Everton on Wednesday, came on in the 78th minute and scored the winner 11 minutes later.
Bayern Munich have 53 points from 21 games, 18 ahead of second-placed Bayer Leverkusen, who were held 0-0 at Freiburg, and Leipzig.
Borussia Dortmund are fourth on 34 after their 3-2 win at Cologne on Friday, and ahead of Schalke 04 on goal difference.
Schalke 04 went ahead after 24 minutes when Werder Bremen goalkeeper Jiri Pavlenka allowed a harmless-looking shot from Yevhen Konoplyanka to slip through his hands and into the net.
The game turned dramatically after the hosts had Matija Nastasic sent off for a second bookable offence in the 78th minute.
One minute later, Ludwig Augustinsson curled a weak Werder Bremen free kick over the wall.
As Schalke 04 goalkeeper Ralf Faehrmann failed to hold the ball, Max Kruse scored amid a goalmouth scramble.
Werder Bremen won the game in stoppage time after Aron Johannsson lifted the ball into the area.
Maximilian Eggestein slipped a shot through Faehrmann’s legs after the goalkeeper got his timing wrong and Zlatko Junuzovic slid home the ball.
Bayern’s win at Mainz was much more straightforward as Ribery drove home from the edge of the area in the 33rd minute.
Rodriguez collected a cross on his chest and volleyed home one minute before the break.
Gomez scored on the hour, diverting Dennis Aogo’s drive into the net from close range, to give Stuttgart a point at Wolfsburg.
It was their first game under new coach Tayfun Korkut, appointed last Sunday.
Gomez’s last goal for Stuttgart was in May 2009, and he has since then played for Bayern Munich, Fiorentina, Besiktas and Wolfsburg, apart from being hampered by injury.
Wolfsburg had to settle for their 12th draw of the season in spite of going ahead in the 24th minute through Divock Origi.
The Belgian curled a superb finish wide of Ron-Robert Zieler after Stuttgart lost possession in midfield.
Hertha Berlin drew 1-1 at home to Hoffenheim in the other afternoon kickoff.