What an incredible monologue, I've only ever seen one other like it
Anyway, I haven't read through it all because it seems that the basic crux of your problem is the refreshing thing, so I'm going to explain why that happens!
When you submit a form, the resulting page is a specially engineered page designed just for you on the basis of what you submitted. It's not a standard page. Which is why when you leave that page and want to return to it, the variables must be submitted again so you get the same page back.
The easiest way about the whole thing is to use a session to keep track of all the data and how far the user has gone. Use normal hyperlinks to backtrack so a new page is called, but use the session to work out whether the data has already been submitted, and if so fill in the gaps for the user. Just do that at every stage and you will be sorted!
To use a button as a link do this:
<input type=button value='This is the button text' onClick="document.location='thepage.php'">