The Addicks made a decent start to the game but finally got into a rhythm after 10 minutes when Callum Harriott raided down the right and fed Ricardo Fuller, who curled an effort at goal that was beaten away by Dorus de Vries.
Wolves had a quiet start to the contest but could have gone ahead in spectacular fashion when Karl Henry fired a shot at goal from 45 yards, but he saw his effort clatter off the crossbar.
After the break, Fuller was in action when he and Yann Kermorgant combined on the edge of the penalty area and but the former Stoke City man could only fire straight at De Vries.
The pair combined again minutes later, this time Fuller lifted a cross into the area that found Kermorgant unmarked in the box, but he could only head over the bar.
Charlton finally took the lead when Dorian Dervite converted from close range after Danny Green's corner wasn't cleared by the Wolves defence.
There was to be one late twist as Charlton took all three points in the dying minutes as Obika rifled an effort into the net to seal the win for his side.