Portsmouth keeper David James produced a superlative display to ensure Pompey came away with a point to bolster their bid for European qualification.
James joined Portsmouth last summer
Craig Gardner, Gabriel Agbonlahor and John Carew all tested James, but each time the Pompey keeper's athleticism and reactions proved superior.
James' display ensured he set a new record of Premiership clean sheets - 142 - to surpass David Seaman's record.
But Villa's inability to get past him was also due to some wild finishing.
Patrik Berger blazed over the bar in the first-half while Gareth Barry was also wayward in the closing stages.
The draw pushed Pompey above Spurs on goal difference to leave Harry Redknapp's side just a point behind Reading, who are seventh.
James' display also ensured he set a new record of Premiership clean sheets - 142 - to surpass the previous record holder David Seaman of Arsenal.
James played for Villa for two season between 1999 and 2001 and he received a generous round of applause from Villa's Holte End when he ran out at the start of the second half.
The former England international has been a key figure in Portsmouth's revival this season and he delivered another inspirational performance.
His best save of a lacklustre first-half came on seven minutes when he produced a point-blank save to block Gardner's shot.
At the end of the opening half James produced a more straightforward stop to frustrate Gardener, diving to his right to parry the Villa midfielder's effort.
In between those two saves Villa created a number of other chances but failed to test the Portsmouth keeper.
Sol Campbell threw himself at the ball to block an effort from Agbonlahor, while Berger lofted a shot over the bar from a promising position.
James was quickly into action after the restart, beating away Carew's fierce drive.
The Pompey goalkeeper's most spectacular save came midway through the second half when he flung himself to his left to turn away Agbonlahor's rising shot.
In the last 10 minutes Barry should have done better when the ball ran through to him, but his shot was woefully inaccurate.
James' opposite number Thomas Sorensen enjoyed an altogether quieter game - testament to Portsmouth's poor away form.
Portsmouth have not won an away league game since Boxing Day and that poor record was highlighted by their inability to force Sorensen to make a single save.
Aston Villa manager Martin O'Neill:
"David James was magnificent and he make some fantastic saves.
"We gambled everything and we tried to keep going and had it not been for James I'm sure we would have taken the three points.
"But on the balance of play we should have won."
Portsmouth manager Harry Redknapp:
"I think David James will play another four or five years.
"He's so fit and looks after himself. He's a great professional and in training is like an 18-year-old.
"We haven't got a team with pace and that can be a problem away from home when you counterattack."
Aston Villa: Sorensen, Bardsley (Young 77), Laursen, Mellberg, Bouma, Gardner, Petrov, Berger (Maloney 79), Barry, Agbonlahor, Carew (Moore 74).
Subs Not Used: Taylor, Hughes.
Portsmouth: James, Lauren, Primus, Campbell, Stefanovic, O'Neil, Hughes, Kranjcar (Johnson 83), Taylor, Kanu (LuaLua 77), Mwaruwari (Mvuemba 46).
Subs Not Used: Ashdown, Pamarot.
Ref: M Atkinson (W Yorkshire).