Yes. One database should be all you need, and more will really mess things up if, for example, you'd port over to a different databasing system. Keep it all together, really.
Just how complicated are we talking? Are you sure the approach you're taking is using the minimum number of tables possible while being fully normalized?
multiple databases in the same project have several issues:
multiple connections in the same page
multiple queries need to be done and data needs to be synced in your code
referential integrity issues
joins not possible across dbs
cannot run sqls on db directly (for eg: to see the output, copy some data from one table to onother, etc)
which spans more than one db
As for as multiple tables concerned, it just depends on how many you use in one query. not really on how many you have in one database. I have 9 drupal installations (around 500 tables) in one db and works fine without any issues.