WHMCS still works pretty good even if you're doing free hosting.
Beyond that, there are a few programs out there that will allow you to create accounts on the fly but you'll want to check the cpanel forums for that as I've never used them.
If you're good with some coding, you can use the cPanel API and create the accounts.
The reason that I"d go with WHMCS is that even though the account is FREE you will still want to collect user information so that if something happens, you can still contact them, or worse, if you need to turn over information due to illegal activities.
FREE attracts all kinds of worms out of the woodwork, but I'd still use WHMCS for contact information.