When calling register() on an account already registered, HARICA chokes with get account request must not contain body as account update is not yet supported. It seems it doesn't like the contents field in
($status, $content) = $self->_request($self->{directory}->{'reg'}, { resource => 'reg' });
The cure is simple and seems at least not to break Let's Encrypt:
($status, $content) = $self->_request($self->{directory}->{'reg'}, "");
I don't know anything about the ACME protocol and didn't test any other CA, though.