Schalke 04 failed to keep the pressure on the Bundesliga front-runners after they crashed to a 3-1 defeat at Borussia MG on Sunday evening.
Borussia MG 3 Schalke 04 1
Stindl gives hosts the lead
Christensen own-goal restores parity
Gladbach retake lead through Raffael
Korb secures victory late on
Andre Schubert's side had won their four previous league games and they took the lead through Lars Stindl just after the half-hour mark at Borussia Park Stadion.
However, the two teams went into the half-time break at level pegging after Andreas Christensen turned Max Meyer's low cross into his own goal on 44 minutes.
But the Foals hit back twice in the second half courtesy of goals from Raffael and Julian Korb, while the visitors finished the match with 10 man after Johannes Geis was sent off on 80 minutes for a bad challenge on Andre Hahn.
Gladbach secured their fifth straight win in the top flight to move up to seventh place, four points adrift of the Royal Blues who remain third but find themselves 11 points off top spot.
Both teams fashioned a whole host of chances in an entertaining encounter and Korb went close to breaking the deadlock early on when he forced Schalke goalkeeper Ralf Fahrmann into a decent save with his effort from distance.
Korb then earned the hosts a penalty moments after the half-hour mark when he was brought down by Dennis Aogo, and although Fahrmann saved Stindl's spot-kick, the striker headed home on the rebound after the ball had looped up into the air.
Fahrmann had to be alert to keep out Ibrahima Traore's strike from outside the area on 41 minutes and it was a crucial save as the Gelsenkirchen outfit responded with the equaliser three minutes later when Christensen put past his own keeper.
Yann Sommer pulled off a fine save to prevent Pierre-Emile Hojbjerg from giving André Breitenreiter's men the lead on 55 minutes, while four minutes later Fahrmann was called on to save Stindl's shot from an acute angle on the right.
Back up the other end, Junior Caicara tried his luck from range, but his shot was easily gathered by Sommer, who then pulled off two saves in the space of two minute to deny Franco Di Santo.
But Schalke 04's good start was pinned back by Raffael on 70 minutes as he curled a free-kick into the top left corner of the goal to restore Gladbach's lead.
The visitors' task was made that much harder 10 minutes later when Geis received his marching orders for a poor tackle on Hahn, who was then forced off through injury.
Granit Xhaka looked to extend the Foals' lead on 84 minutes, but Fahrmann kept out his long-range strike, although the keeper was beaten again moments later when Korb slotted home Raffael's pass from close range to wrap up the win.