What is Hugh's vocal range? To stay true to the musical, he needs to be either a Bass-Baritone or a Baritone, to play Javert; and a tenor (specifically a dramatic tenor) to play Valjean. I think he'd be much too old to play Marius.
Yeah, he's too old to be Marius. I don't think Javert or Valjean would be a problem, visually; he's mid-40s, and the character runs the gamut from a youngish man to a man fairly advanced in years over the course of the show.
I don't know the technical term, but having heard him sing a few times, I don't think he'd have a problem with either part.
Hathaway seems a little old to be Cosette by now, but I could see it working okay.