The listen server works fine but why is my dedicated server not working right?

That sounds like the spawn setup is incorrect, try moving the Spawn game object up higher in the editor. Better to drop a little bit to floor then to try spawning in the floor as that would cause it to fail usually.