1. Invincibility frames are nonexistant! If you get hit while in between at least two enemies, don't expect recovering from that. Getting your stalwart shell from wish isn't a good idea! You also should be knocked back whenever hit, however this may be harder to implement
2. Enemies are a bit too unpredictable. Can't tell when they'll jump or not. Easy fix would be to add a delay before they jump and a little animation to go with it.
3. Gravity feels a bit floaty at times. I don't know if it's impossible to do but you can try slightly increasing the fall speed every frame they are in the air by a small amount, resetting whenever they touch the ground. Jumping should push the player upwards with a force of __ steadily and stop when the player lands.