Letsencrypt SSL certificate renewel worked, but still shows as expired

I am using certbot-auto to make and maintain SSL certificates on my servers. On one of them, I needed to renew it, so I ran the usual command:

certbot-auto renew

And I got the output:

Requesting to rerun ./certbot-auto with root privileges...
Saving debug log to /var/log/letsencrypt/letsencrypt.log

--------------------------------------------------------
Processing /etc/letsencrypt/renewal/mydomain.com.conf
--------------------------------------------------------
Cert is due for renewal, auto-renewing...
Plugins selected: Authenticator standalone, Installer None
Renewing an existing certificate
Performing the following challenges:
tls-sni-01 challenge for mydomain.com
Waiting for verification...
Cleaning up challenges
--------------------------------------------------------
new certificate deployed without reload, fullchain is
/etc/letsencrypt/live/mydomain.com/fullchain.pem
--------------------------------------------------------

Congratulations, all renewals succeeded. The following certs have been renewed:
  /etc/letsencrypt/live/mydomain.com/fullchain.pem (success)

Ok good, it seems to have renewed the certificate for my domain! But I noticed after reloading all my applications that HTTPS still wasn't working, so I ran

 certbot-auto certificates

And I get this:

Found the following certs:
  Certificate Name: mydomain.com
    Domains: mydomain.com
    Expiry Date: 2018-01-13 23:50:14+00:00 (INVALID: EXPIRED)
    Certificate Path: /etc/letsencrypt/live/mydomain.com/fullchain.pem
    Private Key Path: /etc/letsencrypt/live/mydomain.com/privkey.pem

It says the cert is expired. So I made a few changes and tried renewing it a few more times, and it always had the same issue. Renewal said it worked, but then still listed as expired. Eventually I hit the rate limit so now I can't renew any more for a while. Any idea about why this is happening?