For a start. Don't worry about my comments on DAC as you are not using it, instead you are outputting to monitor.
The first issue I can say is that ref clk difference is trivial for your test purpose (but will have some effect on the hearing of audio if you pass your frequencies to human).
second: Is there any reason why you use double Fs (8000*2) for your fft?
since data is sampled at 8k by ADC then you should run fft at that data rate unless altera fft requires you double the speed of internal fft operation. Even then the fft input and output should run at 8k otherwise you will introduce major error.
third: how did you do your sqrt(I^2 + Q^2)? was it in DSP builder?
fourth: in your fft scaling do you take account of bit-growth.
fourth: why use 29 bits for result when your data is just 16 bits, it looks excessive, you can truncate it down to 16 bits(not important now)