Both problems you mentioned are solved by using S3 configured to serve the buckets contents as static site as origin for CloudFront.
While it’s not strictly CloudFront only doing the work, it’s still a static site.
While it’s not strictly CloudFront only doing the work, it’s still a static site.