SUMMARY: Decrease gravity and increase jump height. Change jump mechanism to add velocity rather than teleportation. Reduce player field of view. Add maximum mining distance. Save inventory.
Sorry about how jumbled this is, I couldn't think of a way to efficient defragement it.
You may want to reduce the effect of gravity on the player and reduce the range in which they can mine - if ((dx^2 + dy^2) ^ 0.5) < max_mining_distance
Increase the player's jump height as well to help with the increased gravity. Reduce their view range so it is easier to control the character and to mine and build.
I notice that to jump you change the character's y position. This makes it very jerky and i suggest adding a velocity function that checks whether the player has no vertical velocity before allowing them to jump.
In terraria they have items which allow you to temporarily ignore this restriction (double jump) but as a developer i know how hard seemingly trivial things are and how easy seemingly mind-boggling problems can be.
A velocity mechanism will also help you with the future addition of other moving objects such as minecarts.
A bug which I noticed is that after leaving and re-entering the world the contents of my inventory had gone back to how they were at the beginning of the game