Hi Sam's mum,
I don't know of any brand of hat that overcomes this problem. I found that persistance is the answer.
You just have to try not to make it a game. Each time he pull's it off just calmly put it back on, not necessarily straight away, give it about a minute (this is not much fun and can go on for a bit).
Eventually they DO give in and will wear the hat!
My 28 month old wont leave the house without a hat!!! (we have had to tell her that she has summer hats and winter hats just so she can feal better when she leaves the house (the little summer hats were starting to look a little silly in the cold overcast weather so now she puts on a nice warm one!!)