You should exclude the problematic .h files (handmade_entity.h, handmade_sim_region.h etc.) from building
There is no need to do that. Visual Studio builds files only with C and C++ extensions. Header files are not being built unless you explicitly configure that.
I can definitely understand Casey's angst towards Mirco$oft..
I would argue that in this case critics against Microsoft is unfounded. If you do unity build, you need to set up project in Visual Studio correctly. You can not expect it to magically understand how to build your project from all the files, if you actually need to compile just one file.
You can blame C/C++ language and preprocessor, though. Language was made in a way that prevents making easy build systems (like C# or D language has).