Borussia Dortmund closed in on the Bundesliga top six with victory, while Bayer Leverkusen stumbled to a 1-1 draw at Cologne.
Hamburg picked up their first win since early February by beating Augsburg 3-2.
Borussia Dortmund responded to the news of Jurgen Klopp's imminent departure with a 3-0 victory over Paderborn,
Augsburg moved five points clear of Hoffenheim thanks to a 2-1 win over Stuttgart.
Paderborn picked up a crucial three points in their battle to avoid relegation after beating Augsburg 2-1.
Schalke's hopes of a top-four finish receded further after a goalless draw at Augsburg on Sunday.
Live only on