Charlton Athletic and Middlesbrough went into half-time deadlocked at 1-1 after Jonathan Woodgate cancelled out an early screamer from Rob Hulse.
The hosts had a great chance to open the scoring early on when Bradley Pritchard was gifted a free header by Bradley Wright-Phillips, but could only put it over.
Chris Powell's men didn't have to wait long for their opener. Pritchard won the ball in midfield and played it to Hulse, who lashed home from outside the area.
The home side's advantage lasted until just before the half-hour mark. Grant Leadbitter whipped an inviting cross into the box and Woodgate found the net with a diving header.
Hulse could have restored Charlton's lead shortly before the half-time whistle, but he missed the target with a free header.