I can see why you think that it might not be grammatically correct. How can you have an even in the past with a verb (can) apparently in the present. Well, you can. The sentence is grammatically correct.
The word Can is listed in the Oxford English Grammar [OEG] as one of many auxiliaries (words that help the meaning of some other verb. Some such words can function as verbs in their own right.
For example, have can function as a verb in its own right, as in "I have a book" (present tense) or "I had a book" (past tense); or it can function as an auxiliary, as in "They have never seen the Great Wall of China".
The word can (apart from the misleadingly identically spelled container) only exists as an auxiliary, followed by some verb, and meaning be able to. Sidney Greenbaum of OEG lists can among a long list of such auxiliaries, such a ought, may, will, etc... In the section on verb phrases, he subdivides the modal auxiliaries and includes can as follows.
 I can just about carry it
 I mean obviously I can write academic articles
 Could you be a bit more specific about that?
 Can I borrow yours?
 You can take these - etc
 Can this be sent? etc...
Later he continues to another category (OEG 4.24 F: Must, cannot, can't, have to, have got to, need. This refers to things, for example that must/have to/have got to be the case, or which cannot be the case, as in your quotation. He gives an example very like yours:
****For a start the patients cannot have been brain dead <,> otherwise they couldn't have adapted so well when awakened.
In other words,
For a start it is impossible for the patients to have been brain dead, because they adapted too well when awakened for that to be (medically) possible.
So a reason is given for the assertion that the circumstance (that a patient was 'brain dead' but then recovered cannot have been the case.
In your quotation, the journalist does not give give any reason why it cannot have been the case. But in the article you link to, it is clear that the situation involved the reason for the referee sending Dembelele of the field with a red card is supposed to be the use of defiant or abusive language. It is also clear that the team manager thought that whatever it was that Dembelele said was very short. One spectator comments that she thought Dembelele said "muy malo" ("very bad"). If she is right, then the manager was right: Dembelele didn't say much, either in length or offensiveness. If not there are plenty of worse things Dembelele could have said in French or, for that matter, Spanish that would have been very offensive indeed.
In the context of what the commentator wrote, a correct, only slightly different alternative would have been:-
Dembelele couldn't have said much to the referee.
Your alternative ("Dembelele couldn't say much to the referee.") is correct English, but means something slightly different. That would mean that the player would have been unable to say much the referee, because (for example) his team captain got between them and pushed him back, shouting at him to shut up.
Cannot is present, and refers to the (present) fact that it cannot (now) be the case that Dembelele (then) said much. If you use couldn't have then the sentence is entirely related to the past: a slight but real difference.