ECC is "Error correction code" - the memory controller can provide the correct read data even in cases of minor bit errors.
As I see it, the ECC monitoring routine should be recording (logging) error counts, recoverable or otherwise.
Anything other than very rare, recoverable, errors indicate the memory is failing - or there is a design / power interference problem, either from the local regulators or external supply to the module.
If it's a single device with the problem & supply voltages are OK with no noise or glitches, the solution is to mend it with a new one - eg. scrap the faulty part. Parts fail, that's just a simple fact.
If it's a repeating design problem then look at the memory ECC configuration, clock speed and timing etc., also voltage regulation & filtering.
In other words go through the design and device configuration from scratch and cross-check everything.