Excellent point! They’d hardly get an American kid to fake a Brit accent. Adult actors have enough trouble with that, so they couldn’t expect a kid to be able to master it. I actually think he looks more like Colin than he does Josh, but given the accent thing, I’d say he’s gotta be a young James and/or Charming.
Didn’t know about the nationalities of Benjamin Stockham and John Pyper-Ferguson, but that makes me even more convinced that it’s not Hook but most likely Prince James and King George because they would have likely found a younger actor that sounded like Colin O’Donoghue if it were a younger Hook.