There is a bug and I don't know if it's fixable but if you go up the part that pulls you up and restart at the same time it will force you to float upwards. You cant fix this with /r or kill in the console. Frank found a way by spec and unspec and it also gets fixed if you leave and rejoin.
It's interesting that suicide doesn't fix it but spectating does, as both change your movement type. That said spectating does have some special properties in source so that might be why spectating fixes it. It's likely that this is probably an issue that can't be resolved via lua.