How exactly are you binding the advance button? ContextActionService bound actions work like a stack, so if you put something on top of the stack that is the function that should be called for that keycode.
ContextActionService:BindAction("Advance",advanceFunction, false, Enum.KeyCode.ButtonA)
This should mean that your advance function is called instead of the jump function. When you unbind that action, ContextActionService will fire the jump function again.