Town made it two successive away wins with an early Tommy Smith goal giving Blues the points in front of a travelling support of more than 2600.
The Town defender had already been denied twice in a sensational start before he thumped a header into the net before the clock had reached 3.05pm.
After waiting until November for a first away win of the campaign at Blackpool, Town are now just four points off the Play-Offs with success at the Valley.
Mick McCarthy made one change to the side that went down against Leicester last weekend, Aaron Cresswell returning from suspension to replace Tyrone Mings at left-back.
New loan signing Jordan Graham was named amongst the substitutes, with Paul Taylor and Luke Hyam both ruled out of the trip through injury.
Town dominated the opening exchanges, with the home side pushed back from the first whistle. Paul Anderson found David McGoldrick with a superb pass inside the first minute but Blues’ top scorer scuffed his shot and Ben Alnwick pushed the ball behind for a corner.
Smith had a diving header cleared off the line from the resultant set-piece, then Alnwick did brilliantly to deny the Town defender and even better to keep out the follow up effort from Christophe Berra.
Smith would not be denied though and from Cresswell’s corner, he thumped in a header to give Blues a deserved lead on five minutes.
Charlton responded with Dale Stephens’ flick header going just wide of the far post but Town continued to carry a real threat and McGoldrick almost got behind the Addicks’ defence.
More good play by Anderson found McGoldrick down the right but the overworked Alnwick was alive to the danger and beat Daryl Murphy to the ball.
Lawrie Wilson dragged his shot wide as Charlton began to get a foothold back in the game on the half hour, the lively Simon Church denied at the far post by good work from Luke Chambers.
Rhoys Wiggins tested Dean Gerken with a fierce shot, while at the other end Jay Tabb was denied by Wilson’s block, then Murphy failed to get any real power with a right foot shot on the half-time whistle.
Alnwick saved comfortably from Anderson in a tentative start to the second-half from both sides, Gerken forced into action to deny Michael Morrison.
McGoldrick’s left foot effort had the sting taken out of it by Dorian Dervite’s challenge, Stephens firing over in response.
Charlton made a double change on 68 minutes, with Church and Johnnie Jackson replaced by Joe Pigott and Danny Green.
Tabb picked up a yellow card after catching Yann Kermorgant late, with Town making a double change for the last 20 minutes, Murphy replaced by Frank Nouble and Anderson making way for Carlos Edwards.
Gerken beat out Cameron Stewart’s effort, Cole Skuse almost feeding Nouble as Town threatened a decisive second goal.
Stephen Hunt replaced Tabb for the final six minutes, Cresswell’s free-kick gathered by the diving Alnwick as McGoldrick challenged.
Charlton threw in a handful of crosses without really creating a clear cut chance as that flying start from Town proved decisive.