Minhas preferências (e a ordem que eu as escrevo):
/entities: entidades e regras de negócio do domínio - core da aplicação
/use-cases: os casos de uso em si, onde há interação entre as entidades do domínio
/repositories: persistência de dados (daí posso usar combinado com um ORM, ou não)
/controllers: rotas da aplicação (antigamente eu usava um /routes também, mas passei a simplificar e usar somente o /controllers)
De fato o express permite essa liberdade pois ele não é um framework opinado, como por exemplo é o Spring Boot para o Java, ou até mesmo o NestJs para Javascript/Typescript. Mas eu prefiro o express ou fastify justamente por essa liberdade.
Se a codebase estiver bem documentada, você consegue separar a liberdade de libertinagem e evitar que sua aplicação vire uma "maçaroca".