Heart defender Patrick Kisnorbo clearly blocked a Tyler Boyd shot with his arm in the 18th minute and he should have been given a red card, while the Phoenix should have received a penalty.
But the whistle didn't sound as play continued and Williams then gave Phoenix defender Ben Sigmund two yellow cards in the space of a few minutes and Wellington were then reduced to 10 men mid-way through the first half.
The second yellow card was certainly soft, which made life tough for Wellington as they had to rejig their personnel with the scores level at 1-1 following a goal to Roy Krishna for the visitors and an equaliser to Jonatan Germano for the home side.
Krishna, who was given his first start for the club during last weekend's 1-1 draw with the Perth Glory, looked lively throughout the contest and his maiden A-League goal would have given him a huge dose of confidence.
The Fijian international has been impressive recently and was a constant threat to the Heart's defence.
With Sigmund gone the Phoenix rallied, as teams often can when shorn of a player, and they took the lead again during the second spell when Tyler Boyd grabbed a goal.
Boyd's well-taken strike came against the run of play but it was great reward for a gallant Wellington team who never dropped their heads.
Referee Williams then judged Heart skipper Harry Kewell was fouled in the box just after the hour-mark by Phoenix utility Manny Muscat and David Williams then drew Melbourne level with a well-taken spot kick.
It was certainly on the softer-side of penalties that you would see and it just added to Wellington's frustration towards the man with the whistle.
Eventually, despite chances both ways, the game ended in a stalemate, which wasn't the result either side wanted given their respective positions on the ladder.
Phoenix skipper Andrew Durante was immense for Wellington in his 150th game for the franchise as he carried the defensive line in the absence of Sigmund.
Wellington's next fixture is away from home against the Newcastle Jets next Saturday.
Wellington Phoenix 2 (Roy Krishna 6, Tyler Boyd 56) Melbourne Heart 2 (Jonatan Germano 29, David Williams 62 pen) Halftime: 1-1