You shouldn't do a measurement with only one OFDM symbol at first. Instead create some random data, perform QAM modulation, devide QAM symbols array in $N$ OFDM data blocks and make OFDM symbols. Then add CP and paste it together to form a frame. Now you can calculate its power,
$P_{signal} = 1 \div (N \cdot N_{FFT})\sum {s^2} $
estimate PAPR, add some noise to model frame spread over AWGN channel. Choose SNR of interest, you know your signal's power, so you can calculate power of noise to be added to satisfy SNR value you've choosen.
$P_{noise} = 10^{-SNR/10} \cdot P_{signal}$
Create complex-value noise with $randn$ function and scale it with
$\sigma = \sqrt{P_{noise}}/{\sqrt{2}}$
and then add noise to your signal.
After that if you perform OFDM demodulation and than QAM demodulation you'll achive BER you're expecting to be for SNR you've choosen. If you want to have more precise measurement, do this routine for some times for one value of SNR and make average statistic. If you want to plot really good curves you need $1e+5...1e+6$ bits to measure BER for one SNR value. You can construct frame from about 5000...20000 bits (its common length for LDPC decoder used e.g. in the latest DVB-T, as I remember) and do measurements in $for$ loop. I advice you to generate random data at every iterarion.
So I don't see any problem in FFT normalization or with anything else. You construct a frame, estimate its power and insert noise according to average signal's power and SNR you want to achive.
Oh, I've forgotten. If you use only part of subcarriers during modulation, you should scale noise power as
$P_{noise} = P_{noise} \cdot N_{used} \div N_{FFT}$
to match the band where signal really exists and noise band.
measured
flag you sould be independent from any scaling introduced by channel or IFFT. But to obtain more reliable results you should increase the number of symbols. $\endgroup$