The collisions won't be pixelperfect, since the behaviors are using timedelta and fancy stuff to run the same speed on all computers. You can fix this issue with events though. I added one event to your "All" event sheet. It's basically setting the block to the right position on the pseudo 32x32 grid when it's stopped.
I guess this does the trick for you: download
EDIT: Also keep in mind to use the collision mode "Bounding box" and not "Per pixel" for your box sprites.