I shoot a 20" barrel .308 (H-K 770).
Seems to perform fine, but I never ran it across a chrony. The .308 was originally developeded as the T-65 for the M-14 rifle with a 22" barrel, so that should be close to optimum. If your son's small, and you decide to go .308, build it as heavy as possible, because a featherweight .308 will rock his world. Then he's got the tradeoff of packing that boat anchor, but at least he won't pick up a flinch, which is hard to cure.
Cutting the barrel back, if it has the same contour, should actually help the accuracy.
In .223 you don't seem to lose much velocity cutting back to 20" and there's not enough recoil to even be concerned with. 10 year olds shoot them just fine. My buddy's son could almost outshoot me at that age.

Maybe start with the .223 and trade in/buy a .308 in a couple years when he's packed on some pounds? You ever consider a .243?