David Moyes' side dominated virtually the whole match and looked certainly to get nothing out of the match until stoppage time, but it was unable to move into fourth place
Villa took an early lead through Christian Benteke, but it was soon pegged back as Everton equalized through Victor Anichebe before Gabriel Agbonlahor scored before halftime.
Benteke added Villa's third in the second half as it looked to be cruising towards the three points. Marouane Fellaini pulled one back before equalizing in the final minutes to rescue a point.
The hosts' only change saw Phil Neville drop to the bench for Darron Gibson who made a return from injury, while Victor Anichebe continued in attack as Nikica Jelavic settled for a place on the bench once again.
Paul Lambert made a couple more changes than his opposite number, with Nathan Baker, Barry Bannan and Darren Bent being replaced by Karim El-Ahmadi, Gabriel Agbonlahor and Andreas Weimann.
Villa came into this match with little confidence, but one would not have guessed that as Charles N'Zogbia cut in from the right, slipped the ball through to Christian Benteke who powered past Johnny Heitinga before sliding a shot into the bottom far corner of the goal, giving the visitors a third minute lead.
It had the lead, but there was not much Villa could do to prevent Everton's ensuing superiority as David Moyes' side dominated possession and created several opportunities, but it just could not find the finish.
However, eventually Everton had the equalizer and it came in similar circumstances to Villa's opener as Kevin Mirallas played a ball into Anichibe, who then held off Ciaran Clark with ease and slid the ball into the bottom corner. With that, the match looked like it would only go one way, but there was another twist as Lambert's team took the lead for the second time.
Everton failed to clear a corner properly and the ball found its way to Ashley Westwood on the right flank. The midfield whipped in an inviting ball and Gabriel Agbonlahor nodded it past a rather helpless Tim Howard. Anichebe and Co. continued to press for a goal and dominated for the rest of the half, but Villa held on to their lead until halftime.
The second half seemed to follow a similar pattern to the first as Everton pushed and pushed for goals, but Villa looked imperious on the counterattack and a good pass through to Andreas Weimann from Agbonlahor should have resulted in a third, but the forward blasted over when one-on-one.
Nevertheless, it was not long before Villa had its third. Matthew Lowton put in a great cross from the right and Benteke held off Heitinga to glance the ball into the bottom corner with his head.
Everton was in disarray, and when Moyes replaced dangerman Mirallas, plenty of boos were audible around the ground, but it grabbed a lifeline soon after.
Bryan Oviedo played a pass into the area for Fellaini from the left, and after a one-two with Anichebe the midfielder powered a shot past Guzan. As the fulltime whistle got nearer Everton continued to camp in the
Six minutes of added time were issued and Fellaini saved a point for Everton as he headed in Baines' corner and he almost grabbed a fourth, but Villa held on for a point.
Follow GOAL.COM USA on