England striker Darren Bent appeared to have put relegation-threatened Villa - and their under-pressure manager Gerard Houllier - on course for three vital points at Goodison Park when he responded to Leon Osman's opener with a second-half double.
But Everton, who were aggrieved when Jermaine Beckford was not awarded a goal after a shot bounced down off the bar shortly before Bent's second, battled on and won a spot-kick when Jean Makoun tripped Phil Jagielka.
The draw was no more than Everton deserved after dictating the play for most of the game despite missing several big names and being relatively secure in mid-table.
Villa, by contrast, were sluggish for large periods and the future of Houllier's regime remains uncertain.
The visitors could maybe even consider themselves fortunate as, apart from Beckford's effort, Osman missed a host of chances to increase Everton's tally.
Everton, already without the likes of Louis Saha, Marouane Fellaini and Mikel Arteta, had managed to field a familiar starting line-up despite the failure of Tim Cahill and Jack Rodwell to prove their fitness.
Beyond that, however, the thinness of their resources was apparent as manager David Moyes named seven substitutes with not a single minute's Premier League experience between them.
Villa welcomed back central defenders Richard Dunne and James Collins while Gabriel Agbonlahor and Luke Young also featured.
Stewart Downing had Villa's first chance when he skipped into the area after a strong run down the right but John Heitinga twice blocked.
Everton were almost gifted the opening goal when Kyle Walker's poor header towards Brad Friedel was seized upon by Beckford.
The former Leeds forward waited for the ball to bounce and although his left-foot effort from the edge of the area was not the cleanest of strikes, it still needed a fine save from Friedel to deny him.
Villa attempted to catch Everton on the break after clearing a Baines free-kick into their own box but Sylvain Distin got back to steal the ball from Walker.
Everton raced back up to the other end but Collins slid in to prevent Beckford getting in a cross.
Everton looked stretched when Dunne headed across the home goal but Tony Hibbert, who celebrated the 10th anniversary of his Toffees debut this week, diverted Nigel Reo-Coker's shot wide.
Generally Villa had struggled to break down the hosts and the Merseysiders grabbed the lead seven minutes before the interval.
Osman, playing in advanced position behind Beckford, took up an attack from Diniyar Bilyaletdinov and broke into the area before beating Collins on the outside.
He shot directly at Friedel but the keeper could not prevent the ball trickling over the line.
Villa put their poor first half behind them to get back on level terms within two minutes of the restart.
Downing was allowed room on the right to cut inside the area and thread the ball through to Bent near the penalty spot.
The £24million man, buoyed by his strike for England last week, made no mistake as he lashed the ball into the roof of the net.
Osman went close to putting Everton back into the lead when he curled an effort just beyond the far post after Friedel had blocked a firm header from Heitinga.
Osman had another opportunity moments later but fired over after being picked out by a superb crossfield ball from Bilyaletdinov.
Beckford claimed he had scored when he broke clear and rattled the bar with a fierce shot which bounced down and away.
The striker was convinced the ball had crossed the line but the assistant referee did not agree and initial replays appeared inconclusive.
As Everton rued their fortune, Friedel punted the ball upfield and Ashley Young released Bent.
The Toffees appealed for offside but Bent played on and tapped the ball past the advancing Tim Howard to put Villa in front and claim his fifth for the club.
Osman spurned a glorious opportunity to equalise when he somehow sliced the ball over from eight yards after Bilyaletdinov had squared the ball across goal and Friedel had failed to intercept.
Yet Everton were determined not to end the game empty-handed and earned a penalty seven minutes from time when Makoun was adjudged to have brought Jagielka down.
It was the first spot-kick Everton had been awarded in the Premier League all season and Baines made no mistake he blasted past Friedel.