Another late winner from Moritz Hartmann proved to be the difference, as he struck three minutes from time to secure all three points.
Even at the break
The visitors began strongly and began to push forward from the off, with Benjamin Hübner making a crucial take to halt a flying André Hahn early on. Another attack on the back of that move saw Thorgan Hazard bring a good save out of Ramazan Özcan.
The game then started to turn in Ingolstadt's favour when a Granit Xhaka elbow saw the Swiss enforcer yellow carded, which meant he was ruled out of their game against Hannover 96. Hartmann then shot narrowly past the post before a timely clearance off the line saw Lukas Hinterseer's goal bound effort deflected away from danger.
It was a half that had very few major opportunities, though both sides would have felt they could - and should - have scored.
Hartmann breaks Gladbach hearts
The break brought a change and Xhaka's day was over. Tony Jantshke came on for the yellow-carded midfielder, with André Schubert unwilling to give up a man advantage to Ingolstadt. The hosts continued to press home their advantage after the break and both Hübner and Hinterseer passed up excellent opportunities.
Gladbach continued to look toothless and Hahn's simple shot was the only real shot that tested Özcan in the second period. Hartmann and Danny da Costa followed on from previous missed chances, in a game that seemed destined to end goalless.
However, with moments to spare the breakthrough came. A lovely move ended with Almog Cohen edging the ball to the back post and Hartmann slid home to sent the Sportpark into rapture. Gladbach forced a few late chances but it came too little too late, as Ingolstadt claimed an important and hard-earned three points.