Sunderland lost ground on the automatic promotion places in Sky Bet League One after play-off hopefuls Charlton sealed a 2-1 win at the Stadium of Light.
The Addicks, unbeaten in eight games, secured the points to stay in touch with the play-off zone courtesy of an own goal from Black Cats midfielder Josh Scowen in the 31st minute and a low finish from Alex Gilbey in the 61st minute.
Scowen pulled one back for Lee Johnson's side with 13 minutes remaining but they could not find an equaliser.
Charlton ended Sunderland's 14-match unbeaten run in all competitions - leaving them five points behind second placed Peterborough, albeit with one game in hand. They are eight shy of leaders Hull, who have played two games more.
Sunderland could, and perhaps should, have been in front before the opening goal but top scorer Charlie Wyke missed two fantastic opportunities.
Charlton took the lead when Scowen's attempted clearance on the line hit the roof of the net after Ryan Inniss' header was only half saved by Lee Burge.
Charlton striker Jayden Stockley had already headed against the post when Gilbey latched on to his flick-on just after the hour to add the second from close range.
Scowen made amends to put Sunderland back in it with a 20-yard diving header, after goalkeeper Ben Amos had denied Wyke again.
But the Wearsiders could not find a way to level things up in a frantic five minutes of stoppage-time.