You can use a custom layout for the form as you mentioned
change the output filter on the webpart to change < table > tags and their children to < div > tags. In version 8 a lot of this is already taken care of.
create styles around the < table > tags.
clone and modify the base form controls as your own and remove the < table > tags from them.
My suggestions would be set the output filter of the webpart to see if this resolves the issue quickly for you.