I agree, it can be a pain. I just try to work around it.
The best thing is to keep a small number of event sheets. I used to use event sheets for partitioning a project into components; now I tend to pack more into an event sheet and use groups to sort things.
For example: instead of a sheet for every level, put the logic for each level in a group, and all those groups in one event sheet. Start with all level logic inactive, and activate/deactivate the groups as needed.
For logic that needs to be included across different sheets, I try to encapsulate as functions unless the operation is going to be called so often as to become a performance issue. All the functions go on one sheet, which is included where needed.