Relative positions are more accurate than absolute positions for a L1 C/A user ("consumer grade GPS"). Differential GPS and RTK positioning take advantage of this effect.
Measurement of the carrier phase would yield centimeter level accuracy, as the L1-signal has 20cm wavelength. Users without access to the military code can however not relate this carrier phase to the timing information exactly, there is always an ambiguity. You can therefore only use code phase, which gives the 10m accuracy at best.
The situation is better if you have access to information from two receivers or from one receiver, that had continuous lock on (some) satellites while moved. You do then know the difference of carrier cycles. For two receivers, you are able to resolve the ambiguity after some observation time, for one with continuous lock, the ambiguity will cancel off when subtracting.
For a commercial receiver, where you do not have access to the raw observables but only to the position output, this still means, that the traveled distance is more accurate than the absolute position. This has to do with that fact, that receivers use "carrier phase aiding" and the last known position fix to some extent to improve their solution. The fix would be much more noisy without such tricks.
I would expect around 20cm distance accuracy in optimal conditions (no multipath, short time (some seconds) between observations, no loss/acquisition of signal between observations).