You don't need to have balanced frequencies in a chi-squared contingency table, you only need to make sure the counts in any one table cell are not low (i.e., <5). (e.g., Yates continuity correction). The chi-squared test is comparing row and column proportions of counts, and not absolute numbers of frequencies. This is because the expected number of counts in a cell is weighted by its column total and row total.
However, in your case, with 2000 variables being tested against gender, what you call a significant test ($P<\alpha$), where $\alpha=0.05$, will be biased from the
multiple testing problem resulting in too many false positives. To overcome this, you need to adjust the level of significance by $\alpha^*=\alpha/\#tests$. So in your case for e.g. 2000 tests, the $\alpha^*=0.000025=0.05/2000$. This is called a Bonferroni (or Sidak) adjustment.
The whole premise for $\alpha^*$ is that for each test you conduct, you must consider that it's like rolling the dice in the casino, for which you have to pay. For multiple tests (2000), you have to somehow pay for each test, and the way you pay is by using $\alpha^*$ instead of $\alpha=0.05$
Please note, the Bonferroni correction to the multiple testing problem is very conservative. Thus, in practice I prefer using the Benjamini-Hochberg (1995) false discovery rate (FDR) method. In genomics and molecular biology, reviewers of papers (and advisors, lab directors) expect to see a list of genes(proteins) whose e.g. FDR=0.05. Thus the list may contain 30-500 genes, the only thing known is that 5% of them are likely false positives. Which ones specifically are false positives is unknown. If the gene list is small for FDR=5%, sometimes we have ramped up to 10-15%, but reviewers know that at this level, there is greater uncertainty and there is less specificity for differential expression.