well, whatever you do, it never stops a client installing multiple wordpress installs anyway..
even if they are limited to a single database, they could still install multiple instances of wordpress all using the same database, just set each one to use their own table prefix.
perhaps the most effective option would be to use the existing limits..
the cumulative total of number of websites, staging websites, add-on domains and subdomains as a limit for the number of app installs allowed.
or create a new limit setting in the packages configuration for the allowed number of app installs.
that's probably going to be more effective, especially if that also limits the number of apps that get shown in the management toolkit in the enhance panel.
it still won't block multiple manual installs sharing a database, but that would have to be done manually and most clients wouldn't know how to do this.
some will, but the only way you're ever going to stop them is very tight limits on disk space / inodes.. or cpu/ram resources and that's going to cause more issues that it solves.