Any hat pattern can be made to fit your son's head you just need to do more rounds in the crown until you get the circumference that will make a hat that fits the size head you need.
Here are a few tips:
This math also works with dc and hdc.
If you want to make a single crochet hat for a certain sized head, you have to do a little bit of math. Using the following method, you can make hats using any weight yarn you wish.
First, measure the circumference of the person’s head, if possible. Most heads fall within a certain range, so unless your recipient has an especially small/large head, you don’t have to be exact.
Second, divide the circumference (or desired size) by 3.1416 to get the diameter needed. For example, If my DD’s head is 20”, I divide by 3.1416 and get 6.36”. So that means I’ll make the diameter of the hat around 6.5 inches.
To find the diameter, you measure from one edge of the circle to the other edge. When you reach the desired size, then you start your rounds until the hat is the desired length.
(Some people also like to alternate inc with rounds of sc. I believe this formula will still work since you just need to reach a certain diameter.)
If you need a “formula” for the length, you count the number of rounds with increases, then add the same number of rounds without (straight sc). So if you worked 7 rounds of increases, you work 7 rounds of sc. The hat should end just about the top of the ears. For a longer hat, work more rounds.