Reduce the impact of gaussian noise on DTMF decoder
One way to reduce the effect of noise is to reduce the bandwidth, either pre-detection or by averaging after detection.

The module you have drawn is before detection so it would be by adding a narrow band filter at each of the 7 DTMF tones then recombining into a single signal of the DTMF decoder, or giving each tone its own decoder.

The width of filter would depend upon how long the tones are present in the original signal.

There may be some parameter of the DTMF decoder than can be adjusted to optimize it to match the length of the incoming signal.  At some point you will not be able to improve the response though.

You may also be able to put averaging after the DTMF decoder to require that a signal be present for a defined time before it is displayed.