i understood that the character's feet aren't touching the ground but without the actual character image(s) i can't be sure if my previous suggestions would rectify.
if you're not adjusting the collision shape at all, i'm nearly sure that you need to, otherwise.
in this example, the sprite's collision box is the same size as the (64x64) image itself, by default. the part that i want to stand on the ground/bottom of the screen is the red box:
here, the collision shape/box is resized to fit the red box (32x32), or "character" in your case, to account for surrounding alpha transparency within the same 64x64 image:
...manually setting the collision box with
SetSpriteShapeBox(ThisSprite,-16,-16,16,16,0.0) the only difference in the code.
you could easily see if my suggestion would work using
SetPhysicsDebugOn() which would reveal the sprite's shape. ie, see if the shape itself is, indeed, resting on the ground.