Lets see if i can put this into easy terms to understand.
Picture memory as a number of slots. Now assume we have 4 available slots for facial features. These 4 slots can be filled out for example with face, eyes, nose, mouth. We are now using all of our available slots for these 4 customisation options. The reason we cant have the horns and face as a separate option is because this would create a 5th customisation option, but we only have room for 4 options.
As for why adding extra hairstyles doesn't affect this is because even if we have 100 different hairstyles to choose from, ONLY 1 hairstyle (the one you choose) is actually taking up 1 of the 4 available memory slots.
The number of total hairstyles we have to choose from is likely to have its own separate memory allocation but that's another issue on its own. You have to view memory as the separate parts that they belong to to make up the whole.
Its a similar issue to the common misconceptions that people have with inventory space. They wonder why if we can purchase an extra retainer, why cant that extra space just be given on our characters. Its the same issue, 1 character with 100 slots plus 1 retainer uses the same amount of available memory when they summon a retainer as a person with 1 character with 100 slots and 10 retainers. Because only 1 retainer memory is loaded up at any given time. The character inventory memory remains the same at 100 slots
But if we had a person who has a character with 200 slots and 1 retainer, they are suddenly using almost 2 times the memory of the person who only has 100 slots and 1 retainer because that character inventory has to be loaded in memory at all times.
And lets not even get started on the technical side of what memory means cause that just gets even more confusing, does it refer to space on a HDD, or RAM or even the capacity of your bandwidth. Most people on these forums think it refers to HDD space, but in most instances, it refers to the later two areas.