First of all, I do not agree on this rule, but I do not want to discuss its reasonableness here. I just think a rule should be universal. If it applies to one country (or region), it should also apply to another one.
My core question (as shown in the title) is why Somaliland is not considered a country in osm. It physically exists, and Somalia government cannot control it. I do not see any difference between it and Kosovo or Taiwan. Similarly, why South Ossetia not considered a country, since it is also de facto independent.
The policy that the OSM Foundation follows in this sort of case can be found here (for completeness, most of the policies are on this page).
As you can see, there are a series of judgements involved - the policy says
is most widely internationally recognised and best meets realities on the ground, generally meaning physical control
Somaliland is a bit of an edge case in that it is more independent and has more control over its borders than many other “disputed territories”, but on the other hand has significantly less international recognition than most others (see wikipedia here for how it compares; currently recognition is only by Israel).
However, as the OSMF Policy notes, you are entirely at liberty to create a map that shows Somaliland as a country in the same way that e.g. Djibouti is shown - the data is in OSM.