I guess I just needed to continue searching for another hour 🙄. The thing that worked was from here:
https://siipo.la/blog/how-to-create-a-page-under-a-custom-post-type-url-in-wordpress
Adding
'has_archive' => false
and then creating a page with the same name as the custom_post_type. I had assumed that setting has_archive to false would then break the mysite.example/event/birthday-party permalink - not so.
So, thank you, Johannes Siipola