Problem: Assume that $\{f_n\}_{n=1}^\infty$ is a sequence in $L^2$ and that $f_n\to f$ in mean. Prove that $\{\|f_n\|_2\}_{n=1}^\infty$ is a bounded sequence of real numbers.
Attempt: Saying that $f_n\to f$ in mean means that $\|f_n-f\|_2\to0$ as $n\to \infty$. With this in mind, lets consider:
$$\|f_n-f\|_2^2=\int_X|f_n(x)-f(x)|^2dx$$
$$=\int_X(f_n(x)-f(x))^2dx$$
$$=\int_Xf_n(x)^2dx+\int_Xf(x)^2-2\int_Xf_n(x)f(x)dx$$
$$=\int_X|f_n(x)|^2dx+\int_X|f(x)|^2-2\int_Xf_n(x)f(x)dx$$
$$=\|f_n\|_2^2+\|f\|_2^2-2\int_Xf_n(x)f(x)dx$$
Which tends towards zero as $n\to\infty$. Since $\{f_n\}_{n=1}^\infty$ is a sequence in $L^2$, for each $n\in\mathbb N$, we have that $\|f_n\|_2\lt\infty$. Since $L^2$ is complete, the limit of $\{f_n\}_{n=1}^\infty$ is also in $L^2$, and so $\|f\|_2\lt\infty$.
I'm not sure if I'm pulling at straws here, or going around it the completely wrong way. I have a feeling that I should have employed something more subtle, instead of expanding the inner product out. I'm afraid that by proceeding as I have, establishing a bound on $\|f_n\|_2^2$ becomes harder as I need to deal with the other components in the expression. What am I missing?
You are going at it in a roundabout way; once you have established $\lVert f\rVert_2 < \infty$, it is much more direct to rely on the triangle inequality than expanding as you did. (you could continue your argument, somehow, e.g. using Cauchy-Schwarz or the AM-GM inequality to handle the $\int f_nf$ term; but that would boil down to reproving the triangle inequality for $L_2$.
We have that, for every $n$, $$\lVert f_n\rVert_2 \leq \lVert f_n - f\rVert_2 + \lVert f\rVert_2$$ by the triangle inequality. By our convergence assumption, there exists $n_0\geq 0$ such that $\lVert f_n - f\rVert_2 \leq 1$ for all $n> n_0$; therefore, for every $n\geq 0$, $$\lVert f_n\rVert_2 \leq \max(1,\max_{1\leq k\leq n_0} \lVert f_k\rVert_2) + \lVert f\rVert_2\,.$$ The right hand side is a constant independent of $n$, showing that $(\lVert f_n\rVert_2)_n$ is a bounded sequence.