In the phrase sergeant major, the noun is sergeant and the adjective is major.
In normal adjectival use, the adjective comes before the noun, and this is called a prepositive adjective:
- red slippers
- heavy cars
- tired workers
However, some adjectives come after the noun, and this is called a postpositive adjective or a postnominal adjective:
- sergeants major
- attorneys general
- notaries republic
- heirs apparent
- professors emeritus
- poets laureate
In both cases, it's generally the noun that becomes plural, not the adjective.
Some of the postpositive pairs, like attorneys general, are used so often that it doesn't sound completely strange. But it's not a form that's entirely common, so pluralizing the first word (the actual noun) rather than the second word (the actual adjective) as if it were a single compound unit isn't entirely natural.
The following is said in a Wikipedia article on the subject:
Recognizing postpositive adjectives in English is important for determining the correct plural for a compound expression. For example, because martial is a postpositive adjective in the phrase court-martial, the plural is courts-martial, the suffix being attached to the noun rather than the adjective. This pattern holds for most postpositive adjectives, with the few exceptions reflecting overriding linguistic processes such as rebracketing …
With some such expressions, there is a tendency (by way of regularization) to add the plural suffix to the end of the whole expression. This is usually regarded by prescriptive grammarians as an error. Examples are *queen consorts (where queens consort is considered the correct form) and *court-martials (where the accepted plural is courts-martial, although court-martials can be used as a third person present tense verb form).
This rule does not necessarily apply to phrases with postpositives that have been rigidly fixed into names and titles. For example, an English speaker might say "Were there two separate Weather Undergrounds by the 1970s, or just one single organization?". Other phrases remain as they are because they intrinsically use a plural construction (and have no singular form), such as eggs Benedict, nachos supreme, Brothers Grimm, Workers United.
Minis Cooper is an interesting thought experiment.
I would say that Mini Cooper is now a proper name (note the capitalization). As a proper name, despite its possible postpositive-adjective origin, the rules for its specific pluralization should follow the normal convention for proper nouns: add an s after the complete phrase.
Just as we have five John Smiths (and not five Johns Smith) we have five Mini Coopers.
Also note that the military ranks mentioned in the question are only capitalized when used as part of somebody's title. Normally, they are common nouns—and they remain in lowercase.