Create a 2 column 1 row table. Put the left-hand content in the left-hand cell, and the text in the right-hand cell. Adjust the widths accordingly.
Yes, you make all the borders zero width, so it won't appear in the finished page. Most website alignment and positioning is done using tables.
You'll need to be more specific...
It's not the software that's the problem, it's the nature of HTML.
What you need to do is have the same page structure on all of your pages. What I would do in your situation is have a table encompassing the whole thing, with the top row holding the header image, and then a second row with a thin left-hand cell holding the navigation menu, leaving the rest of the space (large) for the content of that particular page.
Set the width of the whole table to 100%, but set a fixed width of the left-hand cell on the second row (navigation cell), and don't allow resizing.
Alternatively, you could use frames, but they're somewhat frowned upon these days.
Also, the only other tip I can give you is don't assume everyone has their browsers set up the same. Something could look great in your browser, but shit for everyone else. You need to rigidly control sizes and alignments as much as you can, if you want it to look OK in any circumstances.
Actually I'm at work.
Best I can do is a html file layout of what I think you should be doing.
Find attached, a basic page-layout. Use this as the basis for all your pages. The table cell that contains the navigation menu, will not move, even if you resize your window, etc.
P.S. You may want to rethink your background colour, it makes the links hard to see, unless you want to change them using css styles, but let's not run before we can walk