Rotherham United fell to their first home defeat of the season as the curse of referee Trevor Kettle struck the Millers again.
The Leicestershire official has history with Rotherham after his infamous performance in a South Yorkshire derby at Barnsley in 2005.
And he played an instrumental role in the Addicks' second goal, in the 66th minute, from which the League One Millers could find no way back.
Charlton's Chris Solly looked to have fouled Jamie Proctor but Kettle, after initially going for his whistle,allowed play to continue and Josh Magennis headed in Ricky Holmes' cross.
Proctor departed on a stretcher.
However, Rotherham could have no complaints about the result as they produced their worst display of the season and were beaten by a smarter, sharper side.
Patrick Bauer headed the visitors in front from a corner in the 16th minute, and Paul Warne's men were left ruing missed sitters by Proctor, who scuffed wide from two yards out after eight minutes, and Semi Ajayi who directed a free header off target just past the half-hour mark.
At 2-0 down, the Millers pressed, but they made little headway against a superior team, leaving Kettle to leave the field to a cacophony of boos.
Goals: Bauer 16, Magennis 66 (Charlton).
Rotherham (4-4-2): O'Donnell; Emmanuel (Vaulks 56), Ajayi, Ihiekwe, Mattock; Williams (Taylor H-T), Potter, Frecklington, Newell; Proctor (Clarke-Harris 70), Moore. Subs not used: Bilboe, Forde, Purrington, Cummings.
Charlton (4-2-3-1): Amos; Solly, Bauer, Pearce, Dasilva; Kashi, Forster-Caskey; Fosu (Ahearne-Grant 85), Clarke (Novak 85), Holmes (Konsa 89); Magennis. Subs not used: Phillips, Sarr, Crofts, Jackson.
Referee: Trevor Kettle (Leicestershire).
Attendance: 7,976 (520).