Your developer is incorrect. There's nothing different about a subdomain than an apex domain from an ACME perspective. It's literally the same as requesting a cert for www.example.com instead of example.com. You just have to tell your ACME client (certbot in this case) to use the name you want.
The only thing I can think of is that your developer has set up restrictions for your subdomain in such a way that you couldn't renew the certificate without your developer (temporarily) relieving those restrictions.
But in principe there is, as @rmbolger already mentioned, no reason why automatic renewal wouldn't work for subdomains: the renewal process is pretty much identical to the first issuance.