I pretty much agree with everything that was already said, the reason behind Pikachu's status as mascot instead of Clefairy is because unlike Clefairy, Pikachu has a more gender-neutral appeal whereas Clefairy would only cater to a female audience, especially because it's pink which is viewed as a very feminine color. To get the right mascot, they had to ensure they appealed to both gender demographics or else the franchise could have been viewed in the wrong light.
Also, Gigginold brought up an interesting point. Pikachu's design is unique but not too weird. It's cool but cute at the same time, and complements Ash Ketchum's design in the anime really well, and its yellow color complements the usual green, red and blue color schemes of the starter trios. It just all works perfectly.
Ash's Pikachu may be god tier, but he's the reason why the anime became a success and trust me, I don't think it would have taken off as well if Pikachu wasn't there as the mascot.