Alan Curbishley made just one change - Danny Murphy was recalled to the starting line-up after a one-game suspension.
He returned to the middle of the park at the expense of Radostin Kishishev, who dropped to the bench.
The Blues looked like a new team and took control of the game taking the lead in the eighth minute.
Neat interplay from the hosts saw Leon Osman filter the ball through to Kevin Kilbane and the Goodison faithful erupted when he was tugged back by the backtracking Dennis Rommedahl in the box.
Rennie pointed to the spot and dished out a yellow card to keeper Thomas Myhre but when James Beattie calmly stepped up, the Dane read it well. He dived to the left and managed to block the kick, but could do little as the loose ball fell back to Beattie who made no mistake second time round for the opening goal.
Everton showed rejuvenated confidence as they began to produce some clever build-up play. Cahill managed to get the ball to Beattie who found Leon Osman bursting into box in the 15th minute. After he had danced through three white shirts Bryan Hughes ended the move.
But as Everton put the pedal to the metal in attack they were caught napping in defence in the 17th minute. Murphy worked a quick free kick with Young and, after an exchange of passes on the right, a wayward header bounced perfectly for Matt Holland on the edge of the area. Without looking up he volleyed home past Nigel Martyn.
However, Everton's blue tide couldn't be stopped and they continued to pile the pressure on the Addicks. Another neat move saw Osman released on the right and the midfielder's cross was a peach.
Kilbane powered his way into the box for a thunderous header, which was only saved by the far post.
Then as half time approached the hosts restored their advantage - Fortune was penalised for a foul on Ferguson. Arteta quickly delivered a free kick from 40 yards out and Mikel Arteta took it quickly. His pass found Cahill storming in at the near post and even the best efforts of Young could not prevent the Aussie sprinting in round the back. His planted header bounced off the underside of the crossbar and into the net to excite the Goodison Park crowd.
The play went end to end after the break before Hermann Hreidarsson's foul out on the right gave the hosts a free kick just outside the box in the 59th minute.
In what was almost an action replay of their second goal, Arteta floated the ball towards goal while Cahill managed to out-muscle two defenders and head the ball home.
Curbishley made a double switch replacing Murphy and Hughes with Darren Ambrose and Kishishev but it made little impact with Everton - and Cahill - denied a fourth goal on 75 minutes. Valente all too easily got in round the back and when his cross was not properly cleared the ball eventually fell to Cahill. The Aussie international tapped in during a goalmouth scramble, but had it disallowed by referee Rennie for a foul by Ferguson.
Kevin Lisbie came on for Rommedahl in a final roll of the dice for Charlton.
But Cahill nearly scored again in injury time. He latched onto a deft lay-off by Marcus Bent only to be denied by the post from 20 yards.