Red hot Werder Bremen recovered from a goal down to win for the seventh time in nine games and move up to eighth. Elsewhere, a dramatic late winner from Jerome Gondorf kept Darmstadt's survival hopes just about alive.
Follow our live coverage of Sunday's late game between Darmstadt and Schalke at the bottom of this page.
Werder Bremen 2-1 Hamburg
(Kruse 41', Kainz 75' - Gregoritsch 6')
Werder Bremen continued their incredible recent run by coming from behind to win an entertaining northern derby that lifts them to eighth and all-but guarantees another year in the top flight. A first half header from Max Kruse and a late strike from substitute Florian Kainz mean the Green-Whites have collected 23 of their 39 points this season in the last nine games.
Hamburg, who came in to the game with 13 points from their last 6 matches, were without key defender Kyriakos Papadopoulos, who has vastly improved HSV's defending since joining in January. They were almost ruing his absence just seconds in. Max Kruse was left in oceans of space in the area but gave Christian Mathenia the chance to make a fine save when he should have put the hosts ahead.
The visitors were also missing top scorer Bobby Wood, but his absence didn't seem to trouble Markus Gisdol's side quite as much. Aaron Hunt clipped in a cross from the right and Wood's replacement Michael Gregoritsch rose highest to guide a firm header inside Felix Wiedwald's far post.
Florian Grillitsch almost leveled ten minutes later but dragged a close-range shot wide before skipper Zlatko Junozovic's 21st-minute free kick thumped against the post. Bremen's pressure finally told just before the break. Santiago Garcia's deep cross from the left was cushioned expertly in to Max Kruse's path by Finn Bartels and the Germany international nodded in his fifth goal in six league games.
Bremen started the second period in equally insistent fashion, with Bartels in particular threatening to give the hosts the lead. But Hamburg weren't out of the contest, Matthias Ostrzolek drawing a smart save from Wiedwald 55 minutes in. Garcia was stretchered off for Bremen with 15 minutes remaining and looked in some pain.
But it proved no distraction to his team as Kainz ran on to a Kruse through ball to blast home with his left foot and seal another Werder win.
Darmstadt 2 – 1 Schalke
(Vrancic 11', Gondorf 90+2' – Coke 75' )
Darmstadt's faint hopes of a miraculous relegation escape were boosted by an injury time winner that rounded off a sorry week for Schalke.
Jerome Gondorf's scrambled late goal keeps Torsten Frings' men alive for another week at least and demonstrated a spirit that has been lacking in the Lillies at times this season.
Gondorf also had a hand in the hosts' early opener. He hooked the ball over his head to Marcel Heller on the right wing and his low cross was allowed to run across the six yard line before Mario Vrancic swept home at the far post.
It was all starting to look a bit grim again for the Royal Blues, who were brushed aside by Ajax in the first leg of their Europa League tie on Thursday, as the second half minutes ticked away with little to shout about for either side. It was to get even worse just before the hour mark when they spurned a lifeline. Aytac Sulu was adjudged to have fouled Daniel Caligiuri in the box but Guido Burgstaller's penalty was at a poor height and central enough for Michael Esser to save with his trailing leg.
Finally Schalke made the breakthrough, Spaniard Coke, making only his third league appearance for the club after suffering a serious injury soon after signing in pre-season, headed home a left wing cross from six yards out.
Darmstadt threw men forward late on, particularly after Kehrer saw red with 10 minutes left and it finally paid off. Sulu's header deflected kindly to Gondorf who lashed home from close range to keep the home fans believing.
Here's how Sunday's action unfolded