Uruguay surrendered meekly to Argentina in a 3-0 defeat last month but this time they took the game to their opponents and will feel aggrieved at emerging pointless after having more of the chances in front of their home fans.
However, one moment of brilliance from Di Maria was enough to settle the match.
Young Uruguayan left back Joaquin Piquerez lost possession on the edge of the penalty area after six minutes and Di Maria curled a sublime shot over helpless keeper Fernando Muslera.
The second half was more even and both keepers had to make important saves but Uruguay’s lack of firepower — they have now scored only two goals in their last five games — meant they struggled against a typically solid Argentine team.
Goalkeeper Martinez was also fortunate in the dying minutes when first Julian Alvarez put a free header over the bar and then the keeper fumbled a long range shot but was able to recover before it crept into the net behind him.
Messi, who missed his last two Paris Saint-Germain games through injury, replaced Giovani Lo Celso with 14 minutes left for Argentina but made little impact for a side that saw their unbeaten streak increase to 26 games, a run that stretches back more than two years.
The top four teams qualify automatically for the finals and the fifth-placed side go into an inter-regional playoff.
Uruguay remain on 16 points, fourth equal with Chile and Colombia.
They head to Bolivia to face the home side at high altitude on Tuesday, while Argentina are at home to Brazil the same night.