AWS Certificate Manager (ACM) provides an SSL/TLS certificate to enable HTTPS in both scenarios including the current status quo, where the web server is running off an EC2 instance. Please see link 1 for a step-by-step guide on how to do this.
Regarding the choice between a CloudFront (CF) distribution or Elastic Loadbalancer (ELB)— it is dependent on the nature of workload you are running on the web application. For example, if the web traffic varies widely and there are times you anticipate excessive traffic that could affect the performance of the web application, then ELB with an AutoScaling group behind it would be the appropriate choice, see link 2. To associate the SSL/TLS certificate to the ELB, please see link 3. If the web application is latency-sensitive and there is need to serve content as closest to the client as possible, then a CloudFront distribution would be appropriate, see link 4. To associate the SSL/TLS certificate to the CF distribution please see link 5.
I have used generic, high-level use cases in explaining how the choice between the two solutions will be dependent on the workload. I have added link 6 and link 7 which outline the typical use cases for both services. For link 6, please scroll down the webpage to get to ‘Use cases’. Alternatively, you can respond with a description of your use case and I will be glad to guide you further. I hope that this information proves helpful, should you have any additional questions or require any further assistance, then please do not hesitate to reach out to me again.
[Link 1] https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html
[Link 2] https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environments-cfg-alb.html
Link 3] https://aws.amazon.com/premiumsupport/knowledge-center/associate-acm-certificate-alb-nlb/
[Link 4] https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-creating-console.html
[Link 5] https://aws.amazon.com/premiumsupport/knowledge-center/install-ssl-cloudfront/
[Link 6] https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/IntroductionUseCases.html
[Link 7] https://aws.amazon.com/elasticloadbalancing/