Anzitutto il margin, border e padding vanno messi a zero in tutte le strutture che racchiudono le immagini.
Quindi se le immagini stanno in <tr> diversi, devi metterli nei tag <img>, <td> e <tr>.
Se sono tabelle diverse, anche i tag <table> devono avere quelle dichiarazioni (non sono riuscito a seguire nel tuo codice tutta la struttura).

Non dici in che browser stai testando: IE e altri si comportano in modo diverso, per quanto riguarda gli spazi vuoti.
Per quanto ne so (e leggo nei vari post in questo forum), sistemare per i browser conformi e` piu` semplice che per IE, mentre da quanto ho capito da te sembra viceversa.

Questo mi fa pensare ad errori di sintassi o di semantica.
Hai provato a validare il codice HTML e CSS?