Are we entirely discounting the free tier that's provided?
There are some mitigating things you can do, set limits on various resources and billing / budgeting alerts but fundamentally I don't think there's an easy way to avoid being on the hook for unexpected costs.
Theoretically you could have lambdas that react to billing alerts and shut things down but I've never seen anyone set that up.
Check out https://aws.amazon.com/free/
You’ll still need a Credit Card on file for overages.