A second-half treble saw Tottenham battle back to snatch all three points against Charlton at The Valley.
Darren Bent put the Addicks ahead midway through the first half with a neat finish from a Danny Murphy pass.
Bent doubled the lead after the break with a curling right-foot shot before Ledley King answered with a faint touch from a Pedro Mendes free-kick.
Ahmed Mido then scored from an acute angle, before substitute Robbie Keane blasted home late on for the win.
Charlton had their hopes of halving the six-point deficit on Premiership leaders Chelsea dashed with a spirited second-half display from Spurs.
But the hosts had looked likely winners of the game.
Out to impress England manager Sven-Goran Eriksson in the stands, Murphy sent in a probing cross for another England hopeful Bent to pounce on.
The striker skipped clear to beat goalkeeper Paul Robinson from 10 yards.
Bent could have doubled the lead 12 minutes later when he scuffed Alexei Smertin's squared pass across the goal.
But the 21-year-old made no mistake shortly after the break, latching onto a Jerome Thomas pass and calmly stopping the ball before curling it into the right-hand corner of the net.
King had missed the best of Tottenham's chances in the first half, blasting a Pedro Mendes' corner wide.
But he made amends in three minutes after Bent's second, faintly connecting with Mido's flick-on from a set piece to reduce Charlton's lead.
The visitors equalised 13 minutes later when Mido picked up the ball deep on the left of the box and drove it through the keeper's legs from a tight angle.
Keane, who came on for Jermaine Jenas, then secured the victory for Spurs in the 80th minute, when he collected a pass from Jermain Defoe and beat the keeper with a right-foot drive from just inside the penalty area.
Charlton desperately tried to level the scores in the final moments, but Luke Young wasted the best chance by firing over the crossbar.
Charlton manager Alan Curbishley:
"I think we lost a game which we deserved to win.
"I think the Ledley King goal changed the whole slant on the game - we'd just gone 2-0 up and deserved to be.
"But it lasted for three minutes and even at 3-2, we had a couple of chances to make it 3-3 , but they weren't taken and we paid the price."
Tottenham coach Martin Jol:
"I think Robbie Keane when he gets this chance in this sort of situation can score which is great.
"Before Robbie came on, it was 2-2 and we had to take a gamble and play three forwards on one flank and it came off.
"I think we deserved it. In the second half, we believed in it and it was a very important away win for us."
Charlton: Andersen, Young, Perry, El Karkouri, Powell, ommedahl, Kishishev (Spector 85), Murphy, Smertin, Thomas (Hughes 79), Bent (Bartlett 71).
Subs Not Used: Sorondo, Myhre.
Booked: Young, Kishishev, Murphy.
Goals: Bent 25, 48.
Tottenham: Robinson, Stalteri, Naybet, King, Kelly, Lennon, Jenas (Keane 64), Pedro Mendes (Tainio 58), Davids, Defoe, Mido (Dawson 82).
Subs Not Used: Cerny, Rasiak.
Booked: Defoe, Pedro Mendes.
Goals: King 51, Mido 64, Keane 80.
Ref: P Dowd (Staffordshire).