Twelve months to the day since Chelsea's Champions League win in Munich, Juan Mata put the hosts in front, only for Steven Naismith to swiftly equalise for Manchester United-bound Moyes' visitors.
The Europa League winners were on top in the second half and sealed victory through £50million striker Torres' first league goal since December 23 as Rafael Benitez's seven-month spell ended with a 28th win from 48 matches.
Substitute Nikica Jelavic had three good chances for Everton, but Moyes' men were beaten in his 518th and last game in charge before his move to Old Trafford.
The opener came when Oscar surged through the middle and found Demba Ba, whose shot from the angle on the right was spilled by Tim Howard and Mata followed up for his 20th of the season.
Naismith went close before equalising when he capitalised on a mistake from David Luiz. Luiz failed to control a regulation ball and Naismith nipped in, received a return pass from Victor Anichebe and clipped in over the advancing Petr Cech. Darron Gibson went close from a shot which deflected off Nathan Ake, hit the post, Cech's head, then the post again.
Gary Cahill saw a shot saved by Howard and Branislav Ivanovic fired over. Sylvain Distin deflected a Ba shot out for a corner after Phil Jagielka had gifted the striker the ball.
Jelavic, on for Naismith, headed straight at Cech before fluffing a glorious chance when Leighton Baines crossed to the far post.
Chelsea snatched the winner when Oscar's cross from the right was met with a cushioned header by substitute Victor Moses and Torres was clinical, his half-volley beating Howard at his near post.
Cech made a stunning stop at point-blank range when the striker met a Baines cross as Chelsea held on for victory.
Source: PA
Source: PA