If you're moving from Cloud Run's convenient setup to AWS, I'd recommend AWS App Runner. It's the closest match - scales to zero and handles concurrent requests like Cloud Run does.
If you need to stick with ECS, you could use a Lambda as a "manager" that keeps your ECS task alive for a time window (say 30 mins) after the first request. This way multiple DAG calls can reuse the same task instead of spawning new ones. When the window expires with no activity, let it shut down naturally. This gives you the on-demand behavior you want without the overhead of constant task creation.