Haaland spares Dortmund blushes in Hoffenheim draw
Haaland's 81st minute strike averted a fourth defeat in five Bundesliga games for crisis-hit Dortmund.
Yet interim coach Edin Terzic remains under pressure with his side three points adrift of the Champions League places in sixth.
England international Jadon Sancho gave Dortmund a perfect start, racing up the left-wing to score his fourth league goal this season on 24 minutes.
Yet the lead didn't last long, as Munas Dabbur scuffed a shot past Marwin Hitz to level the scores just seven minutes later.
Ihlas Bebou bundled in Hoffenheim's second just after half-time, the ball bouncing off the Togolese and back into the goal as Hitz tried to beat away a dangerous cross from the left wing.
Haaland had a goal ruled out for offside in the second half before pouncing on a misplaced pass to snatch a crucial late equaliser.
Fellow Champions League hopefuls Bayer Leverkusen also dropped points after they conceded two late goals to draw 2-2 with strugglers Mainz.
Lucas Alario tapped in a low Moussa Diaby cross to give Leverkusen the lead on 14 minutes, and Patrik Schick appeared to seal three points with a second on 84 minutes.
Yet second-from bottom Mainz were rewarded for a brave performance as late goals from Robert Glatzel and Kevin Stoeger saw them save a point and continue their recent return to form.
Elsewhere, Werder Bremen were held to a 0-0 draw at home to Freiburg while Sami Khedira helped rescue a 1-1 draw for Hertha Berlin against boyhood club Stuttgart.
Austrian striker Sasa Kalajdzic headed in his ninth goal of the season to give Stuttgart the lead at the end of a scrappy first half.
Yet Khedira, who joined Hertha from Juventus in January, came off the bench in the second-half and set up a late equaliser for 17-year-old Luca Netz and save the capital club from a fifth straight defeat.