Hola
Antes que nada no soy un experto, pero sé como puedes resolver algunos de tus problemas:
1. Te recomiendo que no uses el boton enviar, sino
Código HTML:
<input type="button" value="Enviar" onclick="TuFuncion()" />
al cual puedes programar para que haga lo que quieres (si es que se puede )con javascript
2. Eso lo puedes hacer con frames

, pero como a mi no me gusta usarlos nunca lo he intentado
3. Esto no es posible ya que depende del navegador, a través del historial.
4. Lo último, supongo que depende de como este programado el sitio en el que abran tu mensaje(yahoo, hotmail, etc ) ya que al darle click a tu link ó se abre en una nueva ventana ó en la misma ventana redirige al navegador, suponiendo que el sitio ponga automaticamente tu direccion como un link.
Bienvenido a los foros del web