You asked for an explanation in the difference in file sizes for HTML files. I've pointed out that your copy is using CR LF and the DreamHost copy is using LF. The output above proves that (the line count is equal to the difference in byte count).
The .htm extension leads me to believe your files came from Windows computers somehow. You do realize that emacs has a DOS mode, where it will read files with CR LF and when saving them will write the CR LF back out, don't you?
Regardless obviously on either machine you can use dos2unix and unix2dos to translate the line terminators as necessary and you need to check with your file transfer client because its obviously translating the line terminator during transfer ie ("ASCII" mode versus binary - which is why your image files don't corrupted)
And if you still need an example that its due to CR LF then tar or zip your copy then upload it and untar or unzip and browse to it using http://web-sniffer.net/ with "Raw HTML view" checked and it will indicate non-printing characters such as CR and LF when present.