Why duplicating the signal length alters magnitude in FFT spectrum?
This is due to Parsevals Theorem. The energy before and after DFT is equal (or depending on the normalization factor, at least proportional).

So, if you double the input energy by duplicating the input, you also get a different output energy. In your special case, you have a two-times repetition of the input, this corresponds to a discrete spectrum, where only every second bin is non-zero. Hence, the value on these bins needs to increase to fulfill the energy constraint.

Edit - More explanation on the discrete spectrum:
For the continuous-time Fourier Transform, every periodic time domain function of period $T$ has a discrete spectrum, where the spectrum consists only of discrete lines (Dirac impulses) with distance $1/T$.

A similar property holds for the DFT: if you input a periodic time function, you get out a discrete spectrum (i.e. it only every $n$th frequency bin is non-zero). Namely, if your time-domain input function has period of $N/L$, your spectrum is discrete, i.e. every $L$th bin is non-zero ($N$ is the DFT length).  

In your case, your input function has period $N/2$, i.e. only every 2nd frequency bin is non-zero. Now, the double input energy (you have input 2 periods instead of one period) needs to be represented on these bins, leading to higher amplitudes compared to a single period.