Dirt on an engine is good. It tells you if there are leaks, and where.
I say wash away. I spray simple green on my whole engine, let it sit for 10 minutes or so, then use a garden hose to hose off everything. Gunk works but is more expensive than simple green. The key is to let the engine dry out before attempting to start it. Don’t spray water on your engine if you can’t let it sit for several hours, longer is better. I’ve been doing it all my life, and currently do it on my newer truck and suv with no problems.
You are right…that water can cause problems…but if certain precautions are taken then it can be done…Like cover all electronic components. I clean my engine once a year…never had a problem…HOWEVER…I spend about and hour securing the electrical components…this includes distributor, coil packs…ALL electrical connectors. Second…I don’t use high pressure. I use the shower setting.
An alternative would be to use a air-hose.
I recommend you use a low pressure water spray, like a garden hose on a low setting. You shouldn’t need high pressure water for this. As long as you don’t exceed the pressure the engine gets from driving in a severe rain storm, you should be fine.