How to write a Custom Movement Mode?

Had the exact same issue for several days before figuring out the solution.

I know it’s very, VERY late but for the sake of your issue of fixing this in blueprint and for anyone in the future searching for a solution to this problem in blueprint, here you fine folks are:
https://dev.epicgames.com/community/snippets/1ee/unreal-engine-sliding-movement-based-on-surface-geometry