Amplitude calculation of the original signal from its FFT
Whoa, clarification is needed. The peak amplitude ($A_p$) of an $N$-length $f_1$ input sinusoid can only be found using

$A_p = 2M/N$

(where $M$ is the the magnitude of the $f_1$ spectral component) if $N$ samples of that $f_1$ input sinusoid represent an exact integer number of cycles.

If that condition holds then you can measure $A_p$ for the $f_1$ sinusoid as well as the peak amplitudes of the harmonics. But those peak amplitude values apply only to the individual sinusoids that comprise your FFT input signal. You CANNOT use the individual measured peak amplitudes to measure the peak amplitude of your nonsinusoidal FFT input.  That was the point made in jojek's comment.