A player's reputation becomes low because they do not care enough about the people they are playing with. Granted, there are times where this seems like an unfair comparison (if I'm in the hospital fighting for my life, playing with others is a low priority), but the majority of times it is because of the personality of the player.
Often, when the personality is such that a player doesn't care about the person they are playing with, they are abusive/insulting in chat.
Abusive speech is difficult for a computer to detect. What is easier to detect is how often other players give green/red thumbs and how often a player times out/disconnects from a game compared to how many games they finish in the allotted time. Therefore, these indicators are used to determine reputation.
To limit the propagation of abusive speech, it was decided that players with a low reputation would be unable to access the chat system.
Now, having said that, yes, there are times when this system is flawed. However, it is the best system available with the resources at BGA's disposal.
Solutions:
1) Reputation raises by 1 point for each game completed in the time period. A reputation of only 30 is required to access the chat system. Play several quick games, and this level is easy to attain.
2) Suggestion for BGA: At some point at the table, automatically post the message "<player> cannot access chat due to their low reputation." This will let others know you aren't talking just out of inconsideration. This point in time could be at the start of the game, after the opponent posts a message, or when the player tries to post a message. Limits should probably be applied to the last methods; a player could be abusive by spamming the same message and in a multi-player game it would be annoying when anyone chats to have the message displayed.