I agree, they serve almost the same purpose. Cloud Run is more backend oriented (API) and App Engine can do both (you can serve static files for the front end, and your app as backend).
So you can fix this with the new compatibility with Global HTTPS load balancer (set a backend as Cloud Storage for serving static files, the others endpoints to CLoud Run).
The IAP compatibility is not yet available on Cloud Run and is more web oriented than API oriented.
So, if you go deeper, the bundled services are deprecated and above all useful for the 1st generation of App Engine. Forget them for the 2nd generation, and thus it's not an advantage for App Engine.
Cloud Run allows bidirectional streaming (for modern website), that App Engine doesn't support.
A last word about cold start. Min Instance on Cloud Run is now in beta and far less expensive than App Engine. I wrote an article on this and I submitted it to Google for a review before publication. Stay tune!