There is no way to shut down a phone without using the touchscreen or removing the battery, sorry. So you might have to wait until the battery runs out.
However the SIM card should not become damaged if you take it out of the running phone (no guarantees).
To get an onscreen button to reboot, you can change some settings:
add a language (Settings > Language)
switch regions or region format (Settings > Region)
toggle navigation bar vibration (Settings > Touch)
switch the SMS character set (Settings > Network+)
toggle Cortana (Settings > Applications (tab) > Cortana)
I would say the third option is the most ...
First off, I'd recommend getting the display fixed. I don't think that there is an other solution that will satisfy you in the long term.
Having said that, you could write an app that pushes out notifications and just crashes on launch. However, there are no "persistent" notifications (they will disappear when you hit them) and you can only send out ...
This is probably a bug . If your Lumia 520 does not wake up, you can force a reboot or soft reset or hard reset. This is possible by holding down the Volume Down and Power buttons together for about 15 seconds or until you feel the phone vibrate. Also you can report it to windows phone developers.
I would like to suggest an easier option to counteract the need of pressing the screen, which often results in blurry or shaky photos.
Go under the Lumia Camera and switch to the front camera, then click the gear icon to view the camera settings, then under that, you will see a timer option:
Change the option to the number of seconds you prefer.
The only way is to remove the battery and put it back in, unless you have an update to install. If you do go to the updates menu in settings and their should be a button to restart and install the updates.
Sounds like you've got excess moisture (still) inside the phone - you may be able to drawy this out by sealing in a plastic bag with some Silica gel, or if you haven't got that to hand, some people have had sucess with uncooked rice.
If neither option works, you may need to visit a service centre.
There exists (at least) two utilises that help you gain system level access (including the registry) Root Tool (pulled from Windows Store last year, but available in link) and WP internals. These tools are somewhat limited in functionality and model support, but still in development. So it might be possible to remap buttons in current (or future releases, in ...