I have the same issue with parallel testing and also use DBtransaction for a similar reason - it is a multi-tenant application and while the central database is lightweight there are lots of tables and seeding needed in the tenant DB and that is too costly to create each time.
WIth 8 processes, it takes a while to set up 8 tenant DBs but then the test suite runs fast. Because the tenants DBs aren't removed until the end of the test run, Laravel doesn't close the connections until then so they build up to well over 500.
I've got round it by setting max_connections to 2000 but the annoying thing is this has to be done manually after a reboot as when the mysql docker container restarts it doesn't retain that. I haven't yet found a way to add additional config to the container but will work on this next.