Referee Mike Riley blew the final whistle two minutes early in the Group G match after fireworks thrown from the stands exploded above the head of Dutch defender Mario Melchiot.
The win takes the Dutch level with leaders Romania on 20 points and keeps them two points above Bulgaria, who have played a game more after beating visitors Luxembourg 3-0.
In a dreadful match, the Netherlands lacked the creativity and pace to unsettle the passionate Albanians, who set out to earn a point and had their chances to clinch a shock win.
On the stroke of halftime the home side thought they had scored when Melchiot headed past his own keeper Edwin van der Sarhad but Debatik Curri was penalised for pushing the defender.
Netherlands coach Marco van Basten replaced Robin van Persie at halftime following a booking for the winger who will miss the next qualifier in Romania next month.
Albania's Alban Bushi forced Van der Sar into a full-length save early in the second half with a shot from 25 metres while Arjan Beqaj kept out two long-range drives by Wesley Sneijder.
But two minutes from time Albania's Lorik Cana was sent off for misconduct and the Dutch took advantage when substitute Urby Emanuelson broke through on the left to set up Van Nistelrooy for the winner triggering missile-throwing by the home fans.
More from rediff