A thing I ran into is there are no virtual hosts in SSH, i.e. you can't have an SSH server at happy.example.org and ecstatic.example.org if they're both the same IP address. There was a patch for this but support waned. It's a huge blocker.
You would not have separate certs for each subdomain but is that a problem? arguably more convenient.
There is also the open source headscale, which I haven't used but seems to be well respected.