Per duplicare i dati in una seconda tabella basta che aggiungi una query come quella per la tabella "utenti", ma a cui cambi il nome della tabella target, per esempio
Codice PHP:
$query = "INSERT INTO utenti (username, email, ....) VALUES ('pippo', 'pippo@isp.com', ... )";
//esegui qeusta query
$query = "INSERT INTO ".$_POST['altra_tabella']." (username, email, ....) VALUES ('pippo', 'pippo@isp.com', ... );
//esegui qeust'altra query in cui $_POST['altra_tabella'] è il nome della tabella in cui copiare i dati
//e che proviene dal menu <select>
Per il limite di elementi nelle tabelle potresti preparare un array con i nomi delle tabelle e lo popoli secondo l'attuale numero di elementi che contengono.
Fai una query "count" su ogni tabella, se il risultato è minore del limite che hai deciso, allora metti il nome della tabella nell'array, altrimenti no.
Lato frontend crei il menu select ciclando sull'array che genererà solo gli option contenenti le tabelle con spazio disponibile.