Fourth seed Murray played so poorly for two hours that an upset seemed likely.
But the Briton held on and edged through a dramatic final set after letting a 4-0 lead disappear.
Andy Murray had predicted that Haase would come out firing and the Dutchman confirmed that on the very first point with a blistering forehand winner.
Haase deservedly got the first break at 3-3 and was completely untroubled on serve until the time came for him to close out the set, when he tightened up and slipped to 0-40 before firing a forehand long.
At last, Murray looked to have gained the upper hand as he moved 4-1 clear in the tie-break but a desperate passage of play handed Haase five points in a row, and the world number 41 converted his second set point.
Nineteen unforced errors told the story of Murray's first set and things got a whole lot worse as he dropped serve at the start of the second, before failing to convert from 15-40 in the next game.
Britain's Andy Murray kept his US Open hopes alive as he recovered from two sets down to beat Dutchman Robin Haase in the second round.