Just make the boulder "Same Level As Hero" and the switch "Below Hero". As long as both events don't have the "Forbid Event Overlap" checked, the boulder can move on top of the hero.
The boulder event is simple as heck, all you need is one line:
<>Move Event: This Event, Face away from Hero, Move Forward
<>
The ladder, however, should be a parallel process with these commands on page 1:
And the ladder's page 2 will just have a precondition of "[0001:Turn On Ladder] ON".
=================
The reason you can't do it within the boulder event itself is because the event X/Y doesn't update until the event is completed. I'm not sure why myself, just another random bug I suppose.