The England U17 international was an unused sub for the 0-0 draw against Middlesbrough at The Valley in the Championship on Saturday.
He joins fellow Young Lions Joe Gomez and Archie Edwards by committing his long-term future to the Addicks.
The striker represented his country three times last season, featuring in the Algarve Tournament back in February where England finished as runners-up.
"Karlan has come very quickly to the attention of head coach Bob Peeters and his coaching staff," said Charlton academy manager Steve Avory in the club’s official matchday programme, The Valley Review.
"What we are looking to do here, with players of that ability, is secure their futures with us if we can.
He continued: "I know from the conversations I have had with the head coach so far, and as we have seen from him putting Joe Gomez into the first team so quickly, that he believes in young players.
"That is more evidence of the pathway which exists here for young players if they work very hard at developing themselves by performing.
"Karlan has done that and been a consistent performer at U18 level for two years. Now he is playing regularly for the U21 side."