just create a trigger that fires when any player enters a text message, then clean all chat messages for all players.
the problem is, that the events are very laggy in sc2 (max delay 0.064) so it can be possible that a chat message is visible for 0.064 seconds (sounds very small, but you can see it pop up) but its also possible that its not visible. the events are nothing else then periodic checks, and if you are lucky the chat message will be entered a very small time bevore the next loop, so it will work perfectly.
yep, thats because of the laggy events mentioned bevore.
i have no idea how to fix this. one idea might be to add a second periodic trigger that clears all messages each 0.064 seconds, the problem will be that it fires exactly when the event will get checked, so it wont make any difference at all. maybe you would have to create several periodic triggers with different intervalls (0, 0.07, 0.09, ...) to clear the chat messages in smaller intervals, but thats a very unperformant and unproffessional solution imo and it wont work perfectly either.
Not on a computer with GE right now, but can you just change it so when a player presses enter (action - UI - key pressed) that it displays an error message like "Cannot send messages"? Or is the enter/return key not listed?
As far as clearing the messages can't you use the Chat Message Event so whenever someone types in "" as a Partial string it will wait .001 Game Time Seconds, then clear all Chat Messages. It won't remove the Message Log, but it wouldn't cause as much lag as the Periodic Event. Although I'm not quite 100% sure it would work, seeing as how I haven't tried it.