It was the Addicks' third successive win and they have turned things around in style since a few weeks ago when they were booed of the field with manager Alan Curbishley complaining of his team's inconsistency.
Fulham were very disappointing until they pulled a goal back late in the game to send some mild panic into the home side, but Charlton deservedly held on for the victory.
The home side twice hit the post and Fulham were tormented all night by Charlton's 21-year-old winger Jerome Thomas, who has just signed a new contract after establishing himself in the team in thrilling fashion.
It was Thomas who gave the home side the lead after 27 minutes when he poked the ball home from seven yards with his right foot after Shaun Bartlett's long-range strike from the right was haplessly defended by Fulham.
Although the young winger was wearing gloves to keep out the cold, he is certainly in a hot streak of form and has been one of the main reasons for Charlton's recent return to winning ways.
A Sylvain Legwinski shot from 25 yards was the only effort the Cottagers managed on goal in the first half.
Just after the break Talal El Karkouri hit the post for Charlton from the tightest of angles, then Danny Murphy was unlucky to see his curling shot beat Edwin Van der Sar, only for it to come back off the foot of an upright.
Charlton increased their lead midway through the second half after Thomas was brought down just outside the area and Murphy's free-kick was headed home by El Karkouri, despite a valiant effort by Van der Sar who got a hand to the ball.
With their substitutions Fulham had four strikers on the field for the last 20 minutes and Andy Cole fired into the sidenetting before one of the replacements, Tomasz Radzinski, pounced to score a consolation from close range after the home side failed to clear a corner.