Maybe the underwear are confusing him and he thinks it's a nappy, how about trying no undies but loose shorts instead?