Em qual versão do Postgres você está? Já pensou em particionar? E, sim, deveria ser mais rápido construir o índice no final, mas isso deixa de fora muitas nuances.