Negative margins can cause problems in some browsers (here's looking at you, old IE). Also, with a negative margin the position attribute is irrelevant.
I'm surprised that your first attempt {position: relative; top: -6px;} didn't achieve what you wanted. It's how I would have done it, and it works fine for me in FF3, IE7, Chrome2, Safari4 and Opera9.61
Here's what I did to test, so you can see the code: http://www.darine.org/table_overlap.htm
If there is anything else you're doing with your table styles that make the situation more complex, I can't guarantee no conflicts :(