a single Engine only points to one database URL at a time. so to that extent, as an Engine assumes there's a "default database" when it connects, any concept of multiple "databases" beneath that is not something the Engine is aware of.
PostgreSQL itself has no "USE" command, so if you have a connection to a PostgreSQL database, that's the one you're talking to, so given this architecture you would definitely need to create an individual Engine per database.
OTOH if these are actually PostgreSQL **schemas** and not databases, that would be something entirely different, but you haven't specified this.