As Atropos said, there’s no other way, and this “workaround” is pretty undesirable since it gives the user access to much of your panel. Account Privs work well for most everything else. I don’t know why the database aspect is so restricted.
I generally recommend that you create several “blank” databases for your users for future use, like DB: USER_db1, USER_db2, etc., with db users of db1_USER, db2_USER, etc. Put them under the user’s main domain as db.USERDOMAIN.com, since that part really doesn’t matter (they all point to the same server anyhow).