The regression always has an "intercept" column with all 1s. So, when using one-hot encoding, if you don't omit one of the categories, the sum of all the category columns will be equal to the all-1s column. Any nontrivial linear combination equal to zero breaks the regression, not just pairwise combinations.
Incidentally, plink 2.0 directly supports categorical covariates; --glm automatically omits one category and one-hot encodes the rest.