Benteke’s 10th-minute header gave Villa the lead on Saturday, before the Belgian scored his 12th goal in 11 games with a far-post finish before the break.
Everton halved the deficit in the second half through Romelu Lukaku’s penalty, but Villa regained their two-goal lead five minutes later through Tom Cleverley’s neat finish.
Phil Jagielka’s header in stoppage time made it 3-2, but Villa held on and the result keeps them two points clear of the drop zone with three games remaining.
After Leicester’s 3-0 win over Newcastle earlier in the day, Villa were under pressure to earn a positive result, and they duly started the brighter.
Tim Sherwood’s side were ahead after just 10 minutes, Benteke rising high above Leighton Baines to connect with Fabian Delph’s deep cross from six yards.
They were nearly 2-0 up from another set piece, but unmarked Ron Vlaar’s header from close range went just wide of Tim Howard’s goal.
But Villa did double their lead just before half-time, as Jack Grealish’s dangerous corner evaded Vlaar but was met by Benteke at the far post to slide home from a couple of yards.
Everton improved after half-time, and earned a penalty after some poor defending from Villa resulted in Vlaar bringing down Steven Naismith.
Lukaku rolled the ball just beyond Shay Given for 2-1, but moments later Villa scored against the run of play.
After being put through on goal by a fine through ball from Leandro Bacuna, Cleverley struck the ball high past Howard for his second goal in two games (64).
Villa had most of the play for the remaining 25 minutes, but Everton made for a nervy last two as Jagielka nodded the ball over the line after a melee- despite Shay Given’s appeals for a foul in the six-yard box.
Sherwood’s Villa held on for his fourth Premier League win as manager, but results elsewhere mean the hosts are still in a battle for survival.
Soccer Saturday verdict – Charlie Nicholas
“This is the best I’ve seen Aston Villa in a long time. For me they have an all-round balance. They have energy, desire, positive passing and running, it was all there today. Villa were more than worthy of the three points and they looked a really good side today.
“Delph was absolutely magical today, Westwood sat in front of the back allowed Delph and Cleverley to go show their energy. Benteke was a constant problem for Everton. This is by far and away the best Aston Villa performance this season.”
Aston Villa: Given (6), Bacuna (7), Vlaar (5), Okore (7), Richardson (6), Westwood (7), Cleverley (7), Delph (8), N’Zogbia (7), Grealish (8), Benteke (8)
Subs: Cole (5), Hutton (5), Sanchez (5)
Everton: Howard (5), Baines (6), Jagielka (5), Stones (5), Coleman (4), Barry (5), McCarthy (4), Mirallas (5), Naismith (5), Lennon (5), Lukaku (6)
Subs: Barkley (5), Osman (5)
Man of the match: Christian Benteke