We have an Amazon EC2 CentOS 7.5 instance whose clock, at boot, is always 35 days late. Yes, you read it correctly. That's a hell of a drift.
[root@myec2 ~]# ntpd -gqn
ntpd: time set +2937270.012860s
Where does the machine fetches the current (bogus) date from? Perhaps somewhere from the instance metadata URI http://169.254.169.254/latest/meta-data/
?
There is a decent chance the answer is nowhere or nowhere it can reach. You should look at the Amazon Time Sync Service. This seems to be the recommended method now, because NTP also requires making sure every instance can reach the internet that needs NTP and the VPC is configured correctly for NTP traffic; which may or may not be something you want.