not all cosmetics are in cash shop. moreover - wow is subscription NOT optional. ESO is. and even game as large as wow with mandatory subscription? STILL has a cash shop. that should tell you something about necessity of a cashshop. yes, its ok that cosmetics are in cash shop. becasue alternative is something like SWL and basically anything run by perfect world entertainment where actual, useful for gameplay things are in cash shop and that is the best way to get them and the only way they are available for in game currency is through currency exchange.
restrictions of functions in GW2 is what makes it essentially b2p. everything from character slots, to trading, to something as basic as chat. in order to get a full experience in GW2? you HAVE to buy the game/its expansions, to unlock the functions that are hidden. its also part of the reason why swtor is f2p in a name only.
again, this is in my opinion. your opinion obviously differs.