Hola:
Verás, en la validación, en vez de forzar el submit con el método del mismo nombre, debes hacer que si valida devuelva true, y si no valida false. Luego la confirmación sería:
onsubmit="if (valida() return confirm('...') else return false"
O poner el confirm en la propia validación, al comprobar que la pasa.
Saludos