When you play back message,that WILL affect dtmf recognition in most cases. Only case when it will not affect is case when user call from digital phone via digital protocol(sip/iax2). If user call PSTN line, then sound in both direction go via same wire, as result playback can be louder then dtmf or have similar frequency, that will affect recognition.
But if still want do that, you have 2 options
1) User aware about feature, and do press it slowly. If so, you can use Read command with digits limit set to 1, after that enother read command with file which say prevous digit etc. Limitation: have be at least 100ms between digits on loaded box, can be less if no load.
2) User not aware. You need know c/c++, read asterisk source(app_read.c have be enought) and write other app which will wait for digit and play digits at same time. Seams like not complex, but see note about recognition.