Hallo Chris,
der Grund Deiner Probleme heißt Cellspacing. Das ist der Abstand zwischen den Zellen. Den mußt Du mit cellspacing="0" explizit ausknocken, sonst scheint die Hintergrundfarbe zwischen den Zellen der Tabelle durch -- andererseits kann man so aber auch ein Gitter erzeugen.
http://de.selfhtml.org/html/referenz/attribute.htm#table
Warum Tabellen böse sind kannst Du ja mal recherchieren. Ich finde am Wichtigsten, daß sich die CSS-Formate Zentral verwalten und somit ohne großen Aufwand ändern lassen. Andereseits bedeutet es auch einen Aufwand, CSS zu lernen. Ob sich das für Dich lohnt weiß ich nicht. Jedenfalls bietet dir CSS Gestaltungsmöglichkeiten, die mit reinem HTML nicht zu machen sind.
[http://www.alistapart.com/articles/journey/]
[http://www.sitepoint.com/article/tables-vs-css]
Alles Gute für Dein Projekt
Vaclav