I agree that existing clients are far from perfect.
However, in case you want to focus on the certificate management parts rather than implementing an ACME client from scratch, then I can warmly recommend you to have a look at Matt Holt’s acmez library, written in Go. In my experience, it’s both stable and pleasant to work with.