Changed Player calculations order.
Collision was being calculated before movement, which resulted in a half-pixel overlap when colliding with solid tiles. This has been corrected by calculating collision after movement.