Both teams were reduced to 10 men in the first half when Haughmond’s Jack Griffiths reacted to an alleged spit from Ryan Bright.
Shifnal manager Mark Simpson said: “He turned his head to one side and spat.
“He didn’t mean it, and the spit didn’t land on him, but I don’t blame their player for reacting if he thought he was being spat at.”
Scott Ryan had just given Haughmond the lead with a 25-yard effort, and the match finished 2-1 to the high-flying visitors.
Shifnal equalised after the break when Adrian Jones scrambled home a long throw before Christian Oldham struck a winner for Haughmond.
The result leaves Haughmond in third with games in hand on those above and Shifnal in 16th.
“It wasn’t a bad game,” added Simpson. “Haughmond are a good footballing side. I fancy Tividale to win it but Haughmond to come second. We sat in and made it difficult for them and nearly came away with something.”
Elsewhere, AFC Bridgnorth were beaten 1-0 by league leaders Tividale, Shawbury United drew 1-1 at Dudley Sports, and Wem Town got a crucial 1-0 victory over Bilston Town Community.