How can I force iOS Mail to download the entire email every time?
Exchange ActiveSync 12.1 (introduced with Exchange Server 2007 SP1, released on Nov 29 2007) added a policy called mail body truncation size (see http://en.wikipedia.org/wiki/Exchange_ActiveSync#Exchange_ActiveSync_12.1).

This is a server-side policy that can be enforced for a group of users, as stated in the Microsoft Exchange documentation (see https://docs.microsoft.com/en-us/previous-versions/office/exchange-server-2007/bb123484(v=exchg.80)):


  Exchange ActiveSync mailbox policies let you apply a common set of policy or security settings to a user or group of users.
  
  (...)
  
  Maximum HTML e-mail body truncation size
  
  This setting specifies the size beyond which HTML-formatted e-mail
  messages are truncated when they are synchronized to the device. The
  value is specified in kilobytes (KB).
  
  (...)
  
  Maximum e-mail body truncation size
  
  This setting specifies the size beyond which e-mail messages are
  truncated when they are synchronized to the device. The value is
  specified in kilobytes (KB).


HCL Traveler (formerly IBM Lotus Notes Traveler) supports ActiveSync and has a similar setting in Default Preferences > Filter Settings, which is enabled by default and limits the downloadable body to 5000 characters (see Table 2 in https://help.hcltechsw.com/traveler/11.0.0/Server_synchronized_settings.html?hl=traveler%2Ctruncate):


  Email Body Truncation
  
  Enables email body truncation. Characters beyond the default character
  value in the email body are truncated from the email body.


So it looks like it is a bandwidth-saving setting on the server and you basically can't do anything about it.