sofry, interesting read!
To answer your last question, "But should I be using tables at all if I want to write for both desktop browsers and handheld computers?" - try to learn how to use divisions, <div id="main">...</div> together with the appropriate CSS to avoid tables completely for layout purposes.
Tables are generally rendered more slowly on browsers and offer less freedom than CSS. With CSS, you can do pixel-exact positioning, relative positioning, etc. The index of
http://www.turcic.com doesn't use a single table for instance.