En realidad no entiendo porque te complicas tanto creando campos de esa forma, cuando lo mas facil seria:
Código HTML:
Ver original<input type="hidden" name="producto[]" value="id_producto" /> <input type="text" name="cantidad[]" value ="" />
Logicamente el campo de producto no seria modificable, por eso mejor que vaya oculto y lo unico que se podria modificar es la cantidad.
Al recibir el formulario, ambos campos tendran la misma cantidad de elementos y podras recorrerlos facilmente.