Hola:
Con tu formulario (modificando el manejador del evento submit)
<form id="formulario" name="formulario" onsubmit="
return validar()" method="post" action="recoger_form.php">
...usas id="formulario", y debido a eso puedes referenciarlo con:
document.getElementById("formulario")..
... y también usas name="formulario"... y desde el nombre puedes hacer las siguientes referencias:
document.forms.formulario
document.formulario
...pero lo que estás poniendo, por ejemplo para validar el nombre es:
formulario.nombre.value... y ese formulario no vale sino las otras formas que puse antes.
Saludos