First, of course there's no perfect mirror. But let's assume there was one.
Next, the question is: Is the bouncing off the mirrors elastic or inelastic. If the photon is absorbed and re-emitted with the same frequency, then the bouncing is elastic and no energy is lost by the photon. It would then go on forever and ever.
But what if it does lose energy with each bounce? Well, your two mirrors form a cavity and if we appeal to the wave-aspect of light, only waves with wavelengths that "fit" into the cavity are allowed, so there'd be a minimum allowed wavelength, $\lambda_0$ with $\lambda_0 = L/2$ where $L$ is the distance between your mirrors and since energy and wavelength of a photon are intimately related, this means that the photon in your cavity has a minimum energy below which it cannot fall.
If you add the concept of heat / temperature / entropy to the mix, what you will get is that the walls (mirrors) are in thermal equilibrium with the photons in your cavity: Some of the energy is then stored in the walls and some in the photons. In fact, considering the situation of taking a cavity at some temperature and looking at the nature of the light that comes out of it (if you poke a tiny hole in it) is one of the phenomena that led to the discovery of quantum physics.
Some misconceptions: A photon has no "electromagnetic charge", it is a massless, chargeless particle. Now what if its energy "runs out"? Then it just ceases to exist. There is no photon without energy.
You are right to question the assumption that the impulse given to the mirror is twice the incoming photon's momentum, but this is not anything to do with the mirror being a perfect reflector. This is an approximation. You are correct that if the reflected photon's momentum is equal to the incoming photon's momentum, then the mass of the mirror must be infinite (or else, the reflected photon's momentum must be lower). This is another way of saying that the mirror cannot move. The best way to explain is to just do a simple kinematic calculation.
Let's ignore the spring and do a simple elastic collision of mirror and photon. This is a non-relativistic calculation (nothing like Compton scattering), so let's use non-relativistic energy and momentum conservation.
Let's take the incoming photon's wavelength to be $\lambda$, the reflected photon's wavelength to be $-\lambda^\prime$ (negative since it is reflected in direction), and the mass of the mirror as $M$. After the photon reflection, suppose the mirror is imparted a velocity $v$. By momentum conservation,
$$
\frac{h}{\lambda} + \frac{h}{\lambda^\prime} = M v \:,
$$
and by energy conservation,
$$
\frac{hc}{\lambda} - \frac{hc}{\lambda^\prime} = \frac{1}{2}Mv^2\:.
$$
You can convince yourself that after eliminating $h/\lambda^\prime$ and some rearranging you will have an equation that is quadratic in $v$, whose formal solutions will be
$$
v = -c \pm c\sqrt{1+\delta} \:,\:\:\:\:\:\:\textrm{where}\:\:\:\delta = \frac{4 h}{M c \lambda} \: .
$$
I'm skipping a lot of trivial algebra (and the quadratic formula); you should be able to get the result above without too much trouble. We can immediately throw away the unphysical tachyonic solution, and, since $\delta \ll 1$, we can expand in $\delta$ to get
$$
\frac{v}{c} = \frac{1}{2}\delta + O(\delta^2) \:.
$$
Thus, we get
$$
Mv \approx \frac{2h}{\lambda} = 2 p \:,
$$
where we have ignored terms that are higher order in $h/\lambda$ (meaning higher order $\delta$ terms). Thus, the momentum of the mirror is approximately just twice the incoming photon's momentum. In other words, you can just approximate the kinematics of the system as if the reflected photon has the same momentum $p$ as the incoming photon, and that the mirror is therefore given a momentum $2p$ because the photon gets reflected (the photon's impulse must be $-2p$ in order to reverse direction, so the mirror's impulse must be $+2p$ in order to conserve momentum).
In reality, the photon will see some wavelength shift, but it will be small. The leading order term in the mirror's impulse will come from the photon's change of momentum due to reflection. Intuitively, this is because the rest mass energy of the mirror is much larger than the photon's energy. For the sake of intuition, you can pretend the photons are equivalent, here, to small particles of mass $m$, where $m$ is given by $m c^2 = hc/\lambda \ll M c^2$. Think of bouncing a marble on the ground, where the mass of the Earth is much larger than the mass of the marble: each individual photon's momentum will not change in magnitude by much since the mirror's mass is much higher, only its direction will change. This intuition is supported by the analysis above: we would expect our conclusions to break down when $\delta \sim 1$, or in other words, when $h/\lambda \sim Mc$ (ignoring trivial numerical factors).
As an aside, we can also approximate what the wavelength shift will be. The value of $v$ up to first order corrections will be
$$
\frac{v}{c} = \frac{1}{2}\delta - \frac{1}{8}\delta^2 + O(\delta^3) \: .
$$
Thus,
$$
Mv \approx 2 \frac{h}{\lambda} - \frac{2}{Mc} \left(\frac{h}{\lambda}\right)^2 \: .
$$
Placing this expression back into to conservation of momentum equation at the top, we will have
$$
\frac{h}{\lambda^\prime} - \frac{h}{\lambda} \approx - \frac{2}{Mc} \left(\frac{h}{\lambda}\right)^2 \: .
$$
So,
$$
\frac{\Delta p}{p} \approx - \frac{2p}{Mc} \:,
$$
where higher order corrections in $p$ will be suppressed by factors of $1/Mc$. In terms of $\lambda$, this shift will be, up to first order corrections,
$$
\frac{\Delta\lambda}{\lambda} \approx \frac{2h}{Mc\lambda} \:.
$$
So, if we take visible light (say, $\lambda = 5 \times 10^{-7} \,\textrm{m}$), and $M = 0.1 \,\textrm{kg}$, this proportional shift will be about
$$
\frac{\Delta\lambda}{\lambda} \approx 8 \times 10^{-35} \:,
$$
which is absolutely the textbook definition of negligible. Where the mirror picks up its detectable motion is in the sheer number of photons hitting it.
Best Answer
One thing that is mentioned in the previous discussion is the frequency shift experienced by light reflected from a perfect mirror. The previous answers have been dancing around this, and essentially you need to conserve both energy and momentum, resulting in a Doppler shift of the reflected light frequency. Allow me to spell this out a little more, given that this may be a point of confusion.
The key to understanding this is to think of the reflection of a photon as two separate events: absorption and emission. Assume for simplicity that the photon (energy $\hbar\omega_0$) is normally incident to the mirror. The first step is the absorption process, which by conservation of energy and momentum will accelerate the mirror backwards (mirror velocity = $v_0$, momentum = $mv_0$, and kinetic energy = $\frac{1}{2}mv_0^2$) and excites the internal degrees of freedom of the electrons in the mirror to an energy of $\hbar\omega_0$. The photon will then be re-emitted in the opposite direction, reducing the internal energy of the mirror, as well as further accelerating it to velocity $v$. The energy and momentum balance for this emission process is described in [1] and is based on Fermi's original treatment from 1932, which I will reproduce here.
Assume the mirror is moving in the positive direction, while the new photon (energy $\hbar\omega$ and momentum $\hbar\omega/c$) is emitted in the negative direction. Equating the energy and momentum before and after the emission process, we obtain the following equations: \begin{equation} \textrm{Conserve energy:}\qquad \hbar\omega_0+\frac{1}{2}mv_0^2=\hbar\omega+\frac{1}{2}mv^2 \end{equation} \begin{equation} \textrm{Conserve momentum:}\qquad mv_0=mv-\hbar\omega/c \end{equation} Rearrange the equations and divide them to eliminate $m$ and solve for $\omega$: \begin{equation} \frac{v'-v}{2c}=\frac{\omega-\omega_0}{\omega} \end{equation} \begin{equation} \Longrightarrow\qquad \omega_0=\omega(1+\frac{v+v_0}{2c}) \end{equation}
This shows that the frequency of the emitted photon will indeed be red-shifted by a factor of $(1+\frac{v+v_0}{2c})^{-1}$, which is just the Doppler shift ($v\ll c$), with the relevant velocity being the average of the initial and final velocities. In fact, a complete treatment of the reflection problem would include another factor of the Doppler shift from the initial absorption process as well.
Although the mirror has not permanently absorbed the energy of the photon, it has acquired some kinetic energy from the recoil of the reflection process since momentum must be conserved. To conserve energy as well, this small kinetic energy causes a red-shift of the reflected photon by the Doppler factor.
[1] Barnett, S. Journal of Modern Optics, 57, 1445 (2010).