The Villans were eyeing their first points of the season and made two changes as French full-back Frederic Guilbert was handed his debut, while winger Jota also got the nod.
Marco Silva handed Morgan Schneiderlin a start in the Toffees’ only change and the visitors started the better of the sides, Richarlison having a penalty shout turned down after clashing with Jack Grealish.
However, it was Villa who took the lead with their first real attack on 22 minutes and it Wesley who opened the scoring.
After missing a flurry of chances in the opening two matches of the campaign, the Brazilian showed real class to skip across Michael Keane to latch onto Jota’s ball and clip past Jordan Pickford.
Everton went into their shells after that but should really have been level when Dominic Calvert-Lewin was found by Seamus Coleman. The Toffees’ number 9 was unmarked on the penalty spot but tried to pass home rather than fire in with confidence and Bjorn Engels made a fine block.
Villa were the better team and were deservedly ahead at the break but were perhaps a bit too reticent to try and double their lead and almost let Everton back in when Yerry Mina headed over a Lucas Digne corner.
Marco Silva made his move around the hour, introducing Moise Kean and Alex Iwobi and the latter had a decent effort blocked by Bjorn Engels soon after.
The game felt like it was bubbling under and after surviving a couple of goalmouth scrambles, Villa again rode their luck when Iwobi hit the post with Heaton beaten.
Kean was also dangerous and found an unmarked Theo Walcott in space but just eight yards out, the former England man tamely side-footed over.
In the end, their lack of conviction was punished when Anwar El-Ghazi converted a fine counter-attacking move before slotting past Pickford to seal the points in stoppage time.