Es porque no existe una instancia de tu Prefab. El prefab es como el “modelo” de tu objeto o la base, pero este “modelo” no existe en el juego, solo sus copias. No puedes ver el prefab mientras juegas.
El Revert lo que hace es igualar el GameObject a su Prefab padre en aspectos como variables, componentes, scripts, etc, sin embargo, respetará todas las variables que hacen distinto el GameObject de los demás GameObjects, como la posición, rotación, nombre, etc.
Imagina que tuvieras un juego con cubos que tienes que recolectar. (: 150 cubos. Y se te hace la idea de darle revert a todos los cubos, y pasase que todos los cubos regresan a una misma posición. No creo que sea divertido volver a posicionarlos. Ahí tienes al menos una razón por la que Unity no reinicia la posición de objetos con Revert.
Saludos!