Pokemon are normally only able to say their names with certain exceptions (Caterpie, Butterfree, Victreebel, Staryu and Starmie all from the anime come to mind) and of course the only Pokemon thus far to actually talk english a.k.a. Meowth, Slowking, Manaphy albeit in singular words, Chatot albeit in parrotting, Zoroark albeit through first transforming into a human and finally Hoopa.
All other Pokemon that speak english don't speak it so much as they either transmit speech through a possessed Meowth or directly into a human's mind, although Meowth shows that given enough training and dedication any Pokemon is able to speak english on their own.
So put simply, Pokemon are not named after what they say because the above handful of Pokemon that don't speak their given names.