Jay Bothroyd was on target against his former club Charlton as Wolves boosted their promotion push with victory.
Charlton had the better of the opening 45 minutes but were unable to make their superiority count.
After the interval Karl Henry's cross from the right found Bothroyd and he steered the ball past Weaver from close range to put Wolves ahead.
And provider Henry steered the ball home on 85 minutes to seal the points for the home side.
Wolves manager Mick McCarthy on Charlton boss Alan Pardew's claimed his side were "roughed up".
"I think it is lovely that another manager has said we've roughed them up."
McCarthy then went on to claim players were not "bruisers" and he said he expected Cardiff to be trying to rough them up on Wednesday, along with a number of other clubs before the season is out.
Charlton boss Alan Pardew:
"In the first half we were in control, we should have got a goal in that period. Chasing the game was very difficult.
"Ultimately we have come away from here very disappointed and we must sort
that out for Tuesday night.
"We were roughed up a bit today and the referee did not help."
Wolverhampton: Hennessey, Foley, Darren Ward, Craddock, Neill Collins, Kightly, Olofinjana, Henry, Gibson, Keogh, Bothroyd (Jarvis 88).
Subs Not Used: Stack, Potter, Little, Eastwood.
Goals: Bothroyd 46, Henry 85.
Charlton: Weaver, Mills, Fortune, Bougherra (Jerome Thomas 71), Powell (Sodje 36), Ambrose (Todorov 70), Semedo, Zheng, Reid, Iwelumo, Varney.
Subs Not Used: Randolph, McLeod.
Ref: Richard Beeby (Northamptonshire).