Why "unequal" but "inequality"?
Solution 1:
The prefixes in- and un- both have the effect of negating the meaning of the word. The prefix in- comes from Latin and almost exclusively applies to words borrowed from Latin, which in many cases were borrowed from Latin with the in- prefix already attached. The prefix un-, on the other hand, is a native English prefix, and so, in general, can apply to any English adjective.
The Online Etymology Dictionary tells us that inequality was borrowed from Latin (via French) with the prefix in- already attached, so we get the word with the prefix in-:
1484, "difference of rank or dignity," from O.Fr. inequalité (14c.), from M.L. inæqualitas, from inæqualis "unequal," from in- "not" + æqualis "equal"
The word unequal, on the other hand, does have the same Latin root of æqualis, but the prefix un- doesn't seem to have been applied to it until after it became an English word.
There exists this phenomenon called blocking, where two seemingly equally valid ways of saying something conflict, so the existence of one blocks the other. Since the word inequality already existed from having been borrowed from French with the negative prefix already attached, the process to form the word unequality was blocked. The word unequality does exist though, but its usage is far eclipsed by inequality.