This is such a pain. Only a very few people that receive mail from my Exchange server have problems where all attachments end up as winmail.dat. I don’t know the combinations that trigger it, but to simplify things, in Exchange 2010 I just set the external domain to send everything as plain text.
In Exchange 2013 you can’t do that through the GUI, so it’s time to resort to Powershell. Luckily the answer is much simpler than trying to work it out from the full command syntax.
Thanks to a quick reply from the TechNet community the answer was actually pretty simple
Set-RemoteDomain -Identity <Name of Domain> -TNEFEnabled $false
So in my case to set it for *all* external email to be plain text, just configure the wildcard domain
Set-RemoteDomain -Identity * -TNEFEnabled $false