According to the site: https://www.hardenize.com/, I have a problem with my certificates. This is the error they are reporting.
Certificate not trusted because server chain is incorrect. This certificate is delivered as part of an incorrect certificate chain. The problems in the chain render the certificate invalid too.
Can anyone explain to me exactly what the problem is?
Depends on your Apache version. Since 2.4.8, the SSLCertificateChainFile directive (notice the "Chain" part) is deprecated.
If you use Apache version 2.4.8 or later, you should change SSLCertificateFile (notice the lack of "Chain") to fullchain.pem instead of the current cert.pem and delete SSLCertificateChainFile.
However, if you use version 2.4.7 or older, you should use both directives (SSLCertificateFile as wel as SSLCertificateChainFile), but change fullchain.pem in SSLCertificateChainFile to chain.pem.
fullchain.pem includes cert.pem as wel as chain.pem, that's why you're sending cert.pem twice now.