Anche se metterei in dubbio il tuo design se ti affidi a tali trucchi, la tua domanda è generale e non hai fornito informazioni specifiche per giudicare in entrambi i modi.
Dovrebbe essere possibile, in realtà. Si tratta solo di creare a livello di codice i nomi delle tabelle come stringhe e quindi, in un ciclo, eseguire le istruzioni CREATE come query dinamiche.
Vedi questa pagina nella documentazione di postgres:http://www.postgresql.org/docs/current/interactive/plpgsql-statements.html#PLPGSQL-STATEMENTS-EXECUTING-DYN