What you want to do is called "fulling."
It involves shrinking a knitted fabric in a controlled way so that the stitch definition remains. (I'm assuming your hat is all wool?) The fabric becomes a bit smaller, thicker and warmer but you can still tell that it is knitted.
It's hard to control shrinkage in a washing machine or dryer. For something as small as a hat, the best way is by hand, in a basin of hot water with a drop of shampoo or dish soap. Get the hat thoroughly wet, then agitate it with your hands (use rubber gloves) or a small, clean toilet plunger. Depending on the yarn, you should begin to feel and see some shrinkage in about 5 minutes.
Take out the hat and run it under cold water. If it looks about right, squeeze out the excess water, stretch and pat into shape and let it dry. If you want it smaller, give it another two minutes of hot water and agitation. But be careful -- too much and you'll end up with a fully felted hat.
If it's still too big for your 6-year-old when the fulling is complete, sewing in rows of elastic, as ContiKnitter suggests, is a good fix.