What's the best method of measuring displacement and speed without resorting to GPS?
Measuring velocity and displacement directly requires referencing to an external system (Galilean relativity). But it sounds like you've ruled that out. So you can only measure acceleration and rotation, which can be done with accelerometers and gyros (maybe combined into an IMU).

Displacement is the integral of velocity, and velocity is the integral of acceleration. So the displacement sensitivity depends on how long constant velocity is maintained. Integrating up the initial acceleration will give you a velocity estimate with some error \$  \sigma_V \$, but then if there is no change in velocity for a time \$ T\$, the displacement error will be \$ \sigma_D = \sigma_V T\$.

Suppose a runner starts from a standstill and accelerates to 2 m/s in the course of 1 s. (I'm not a runner, so I could be off by a factor of order unity on the numbers here.) That's about \$ 0.2 g \$.  A typical accelerometer like the ADXL335 has noise of maybe 200 \$\mu g\$ over that 1 s interval. So you can estimate the velocity to about 0.1%, \$ \sigma_V \approx 2\$ mm/s. The 500 m total run length takes 250 s, so at the end, you're off by \$\sigma_D =\$ 50 cm. Shorter distances will have correspondingly lower error.

However, the accelerometer had better be on when you start your run! Otherwise you don't know your velocity and can't estimate the displacement at all.