This suggested fix here works.
To explain the underlying problem and a correct fix for it, should anyone manage to resume maintenance on this:
This problem is caused because letsencrypt has already been used on your server within the account hosting the website you’re trying to set up, but likely for a different domain name. By default, the plugin looks for and stores your letsencrypt data in a directory called ‘letsencrypt’ which is next to your document root for the website (at the same level in the tree).
The plugin notices that you already have a registration key, and tries to use it to “refresh” the registration. This fails because the registration was previously made using a domain name that isn’t the one you’re now using. You *can* use the same registration key for multiple domains, but not to make a new registration. The trick (and correct fix for the plugin) is that it needs to look on the filesystem to see if you are already registered, and just use the one that’s already there (and immediately make the Generate Certificate button available). In fact, this is essentially what you’re doing (the hard way) with the above patch. It tries to register, it fails, the patch earlier in the thread makes it ignore the error code and write the registration key off the filesystem into the database anyway. Now you’re linked to that registration and can make new certs.
If you get an error about validation failed afterwards, that’s a separate issue, and probably because the plugin also assumes that if your domain name doesn’t start with ‘www.’ that it’s also accessible at ‘www.’ and tries to generate a cert for both. If ‘www.’ in front of your domain doesn’t actually exist, it’ll fail. If you have control of your DNS, it’s easier to add the additional subdomain than to hack the plugin to not make a www. cert.