The problems turned out to be:
1. cPanel decided to request certificates for the
www.sub.example.com variants of the subdomains without checking whether the entries actually existed in the zone files.
2. Attempting to add A entries for the www's using the DNS zone manager gave a success message, but did nothing, because:
3. There was a bunch of useless gibberish related to the two
www.subs in the zone file. I suppose they were errors of some sort; and:
4. The DNS Zone Manager inserted the new entries
after the gibberish, which resulted in their being ignored.
5. The legit sub's SSL somehow got uninstalled, possibly because of the failed requests on the non-existent www? That also:
6. Caused it not to appear in Manage SSL Hosts.
7. The support guy I dealt with last time actually did obtain a renewed hostname certificate, but didn't use it to replace the expired one. I guess he assumed I would, and I assumed he would.
8. The previous failed SSL cert requests got stuck in the queue; so:
9. The new requests were ignored because there were requests pending.
What I did:
1. Backed up and cleaned up all the crap from the zone file.
2. Manually put the A entries for the www.sub's where they belonged.
3. Reloaded the zone, restarted DNS, and all that jazz.
4. Manually assigned the renewed hostname certificate to the hostname.
5. Reassigned the expired certificate to the sub that had been missing from Manage SSL Hosts.
6. Cleared the AutoSSL queue ( mv /var/cpanel/autossl_queue_cpanel.sqlite /var/cpanel/autossl_queue_cpanel.sqlite.old ).
7. Ran AutoSSL.
And it's fixed.