Well first I'd like to say that the player isn't ALWAYS silent in every game, there are a few spinoff games that have player dialogue, anyway...
Would you like it if a little annoying robot talked to everyone for you, constantly saying things you wouldn't want to say? Well there's your answer right there. Occasionally NPC will respond as if you did actually say something, but in all honestly you really did since you pushed A in front of them.
The players can't talk because they're you. I'd find it very annoying if the gamer constantly made me say idiotic things and things I wasn't even thinking of. Luckily, as every Pokemon game advances they get better and better at getting you to "communicate" with NPC in a more proper way.