A Ricardo Fuller special and a goal from Yann Kermorgant handed victory to Charlton and increased the pressure on bottom side Peterborough.
Darren Ferguson's men had looked the most likely side to score until Fuller fired in from 25 yards.
The Jamaican striker had to come off with an injury, but Charlton wrapped up the win when Kermorgant tapped in.
Posh are now four points adrift of safety at the foot of the Championship, and have not won in a month.
- Ricardo Fuller has now scored 85 goals in English league football
- He made his English debut for Crystal Palace in February 2001 but only scored twice for the Eagles
- His most prolific spell came at Stoke, where he netted 50 goals in all competitions before leaving last summer
Charlton impressed in the first half at The Valley but failed to take their chances, with Bradley Pritchard then hitting the post moments after the restart.
That header jolted Peterborough into life.
On-loan Dagenham man Dwight Gayle was denied his first goal for the Posh by Ben Hamer, before George Boyd also forced the keeper into a save.
Lee Tomlin then turned a Boyd shot onto the post before Fuller struck, holding off his man and firing in a fine effort from 25 yards.
While the summer signing had to hobble off immediately, Chris Powell's side were celebrating again five minutes from time when Kermorgant turned in substitute Danny Green's right-wing cross.
Charlton boss Chris Powell: "There is going to be times when we are going to play better and not get much in return.
"I'll definitely take this. We've been thin on the ground at home, but we got a clean sheet.
"We have 13 points out of the last 15 so I can't complain. We've played better this year and lost so it is about time.
"Over the course of the season sometimes you might not merit the win, but because of your discipline and doggedness, which we needed this evening, you get wins."
Peterborough boss Darren Ferguson: "The better team lost. It is just unfortunate maybe the way things are going at the moment.
"We didn't get a break, like the one that spun off Lee Tomlin and hit the post. We had a very, very, very good performance.
"I think you've got to take the positives out of any game and I've seen enough tonight to tell me we'll be OK.
"I think if any neutral had been at the game tonight and had looked at the league table before the game, that performance would not suggest we deserve to be at the bottom."
Live Text Commentary
Full Time The referee blows his whistle to end the game.90:00 +3:23
The referee blows for offside. Michael Bostwick takes the indirect free kick.90:00 +2:04
George Thorne decides to take the corner short, George Boyd has an effort at goal. Blocked by Johnnie Jackson.90:00 +0:13 Substitution
Substitution Eggert Jonsson replaces Yann Kermorgant.90:00 +0:13
Shot on goal by Grant McCann from just inside the area goes over the target.88:55
Free kick awarded for a foul by Danny Green on Joe Newell. Lee Tomlin crosses the ball from the free kick right-footed from left wing, Ben Hamer makes a save.88:20
Free kick awarded for a foul by Chris Solly on Grant McCann. Grant McCann restarts play with the free kick.87:29
Effort from 18 yards by Robert Hulse. Save by Robert Olejnik.86:31
George Thorne produces a cross.86:05
The ball is sent over by Danny Swanson, Leon Cort makes a clearance.85:27
Grant McCann fouled by Danny Green, the ref awards a free kick. Joe Newell takes the direct free kick.84:06
Danny Green provided the assist for the goal.84:06 Goal scored
Goal! - Yann Kermorgant - Charlton 2 - 0 Peterboro Yann Kermorgant grabs a goal from close in to the bottom left corner of the goal. Charlton 2-0 Peterborough.83:12 Substitution
Substitution Danny Swanson replaces Shaun Brisley.82:00
The offside flag is raised against Robert Hulse. Robert Olejnik takes the indirect free kick.81:44
Danny Green challenges Joe Newell unfairly and gives away a free kick. Direct free kick taken by Joe Newell.80:53
The ball is crossed by Joe Newell, Ben Hamer makes a save.79:42
Free kick awarded for a foul by Danny Green on Joe Newell. Joe Newell restarts play with the free kick.77:58 Substitution
Substitution Robert Hulse joins the action as a substitute, replacing Ricardo Fuller.76:04
Assist by Yann Kermorgant.
Goal! - Ricardo Fuller - Charlton 1 - 0 Peterboro A goal is scored by Ricardo Fuller from just outside the penalty box to the top left corner of the goal. Charlton 1-0 Peterborough.75:24
The ball is swung over by Danny Green, Robert Olejnik makes a save.75:07
Joe Newell sends in a cross, Ben Hamer makes a comfortable save.73:58 Substitution
Substitution Emmanuel Frimpong goes off and Danny Green comes on.72:53
Unfair challenge on Johnnie Jackson by George Thorne results in a free kick. Free kick taken by Emmanuel Frimpong.72:06
Free kick awarded for a foul by Johnnie Jackson on George Boyd. Grant McCann takes the free kick.70:23
The ball is delivered by Mark Little, Michael Morrison gets a block in. Corner taken short by Grant McCann, The ball is delivered by Lee Tomlin, blocked by Johnnie Jackson. Corner taken left-footed by Grant McCann.69:22
Free kick awarded for a foul by George Boyd on Emmanuel Frimpong. Free kick crossed right-footed by Chris Solly from left channel, save made by Robert Olejnik.68:47
Effort on goal by George Boyd from deep inside the area goes harmlessly over the bar.66:29
Free kick awarded for an unfair challenge on Ricardo Fuller by Michael Bostwick. Yann Kermorgant produces a shot on goal direct from the free kick.66:12
George Boyd produces a cross, save by Ben Hamer.64:23 Booking
Booking Michael Bostwick receives a caution.64:06
Yann Kermorgant fouled by Michael Bostwick, the ref awards a free kick. Ben Hamer takes the free kick.59:07
The ball is sent over by Bradley Pritchard, blocked by George Boyd. Inswinging corner taken left-footed by Johnnie Jackson from the right by-line, Mark Little makes a clearance.55:34
Free kick crossed by Grant McCann, Michael Morrison manages to make a clearance. Grant McCann takes a short corner, Shot by Lee Tomlin from deep inside the box bounces off the post.55:34 Booking
Booking Emmanuel Frimpong receives a caution.55:11
Emmanuel Frimpong gives away a free kick for an unfair challenge on George Thorne.54:04
Yann Kermorgant is ruled offside. Indirect free kick taken by Michael Bostwick.53:04
Dwight Gayle takes a shot. Save by Ben Hamer.51:46
Grant McCann takes a outswinging corner from the left by-line played to the near post, Headed effort from inside the area by George Thorne misses to the right of the goal.50:45
Lee Tomlin takes a shot from 20 yards. Save made by Ben Hamer.49:50
Centre by Bradley Pritchard, clearance by Mark Little.49:04
Chris Solly sends in a cross, Bradley Pritchard has a headed effort at goal from deep inside the area missing to the right of the target.48:13
The referee blows for offside against Ricardo Fuller. Robert Olejnik takes the free kick.47:14
Chris Solly delivers the ball, Headed effort on goal by Yann Kermorgant from inside the penalty box misses to the right of the target.46:44
Mark Little sends in a cross, save by Ben Hamer.46:21
George Boyd sends in a cross, Leon Cort gets a block in.45:24
Ricardo Fuller delivers the ball.45:01
The match restarts for the second half.45:00 +2:21 Half time
Half Time The referee blows for half time.45:00 +1:54
Shot by Grant McCann from outside the area goes high over the crossbar.45:00 +0:24
Ricardo Fuller gives away a free kick for an unfair challenge on Joe Newell. Lee Tomlin crosses the ball in from the free kick, Leon Cort makes a clearance.44:26
Drilled left-footed shot by George Boyd. Save by Ben Hamer. Lee Tomlin takes the inswinging corner, clearance by Johnnie Jackson.43:02
George Boyd produces a left-footed shot from inside the area that clears the crossbar.42:37
The ball is sent over by Salim Kerkar, Shaun Brisley makes a clearance.39:09
Chris Solly concedes a free kick for a foul on Dwight Gayle. Lee Tomlin delivers the ball from the free kick right-footed from left wing, save made by Ben Hamer. George Thorne has an effort at goal from 25 yards. Comfortable save by Ben Hamer.38:04
Joe Newell gives away a free kick for an unfair challenge on Bradley Pritchard. Emmanuel Frimpong takes the free kick.36:06
Joe Newell sends in a cross, Dwight Gayle produces a header from inside the area that goes over the bar.34:32
Ricardo Fuller takes a shot from 12 yards. Save by Robert Olejnik. Inswinging corner taken by Salim Kerkar from the right by-line.32:43
Foul by Daniel Seaborne on Mark Little, free kick awarded. Grant McCann delivers the ball from the free kick left-footed from right channel.30:48
The ball is swung over by Daniel Seaborne, Shaun Brisley gets a block in.28:57
The ball is delivered by Bradley Pritchard, save by Robert Olejnik.25:31
The ball is delivered by Mark Little, Leon Cort manages to make a clearance.23:56
Daniel Seaborne sends in a cross, Shaun Brisley manages to make a clearance.22:10
Grant McCann crosses the ball in from the free kick, Michael Morrison makes a clearance.22:10 Booking
Booking The referee shows Michael Morrison a yellow card for unsporting behaviour.22:01
Lee Tomlin fouled by Michael Morrison, the ref awards a free kick.21:06
The ball is sent over by Salim Kerkar, clearance by Joe Newell.18:22
Mark Little fouled by Daniel Seaborne, the ref awards a free kick. George Thorne restarts play with the free kick. Michael Bostwick produces a drilled right-footed shot from 25 yards. Save by Ben Hamer.16:38
The ball is crossed by Ricardo Fuller, Michael Bostwick gets a block in. Header from deep inside the area by Johnnie Jackson goes harmlessly over the crossbar.15:31
Chris Solly takes a shot. Nathaniel Knight-Percival gets a block in.14:46
Emmanuel Frimpong challenges George Thorne unfairly and gives away a free kick. Direct free kick taken by Grant McCann.11:40
Emmanuel Frimpong takes a shot from a long way out which goes wide of the right-hand post.11:07
The ball is crossed by Yann Kermorgant, clearance made by Shaun Brisley. Inswinging corner taken left-footed by Johnnie Jackson from the right by-line to the near post, Grant McCann manages to make a clearance.10:03
George Boyd produces a drilled left-footed shot from 12 yards. Leon Cort gets a block in.7:36
Dwight Gayle takes a shot. Leon Cort gets a block in. Lee Tomlin takes the inswinging corner, Michael Morrison makes a clearance.5:49
Grant McCann challenges Ricardo Fuller unfairly and gives away a free kick. Johnnie Jackson delivers the ball, Emmanuel Frimpong takes a shot. Robert Olejnik makes a save. Inswinging corner taken left-footed by Johnnie Jackson from the right by-line, clearance by Nathaniel Knight-Percival. Corner taken left-footed by Johnnie Jackson, Header from deep inside the penalty area by Ricardo Fuller goes harmlessly over the crossbar.3:38
George Thorne concedes a free kick for a foul on Bradley Pritchard. Free kick taken by Ben Hamer.1:50
Shot by Yann Kermorgant from 25 yards. Robert Olejnik makes a save. Inswinging corner taken by Johnnie Jackson, Header by Leon Cort from deep inside the penalty area misses to the left of the target. Corner taken by Grant McCann, Johnnie Jackson manages to make a clearance.0:00
The game kicks-off.
Live data and text provided by our data suppliers