How to prove that from "Every infinite cardinal satisfies $a^2=a$" we can prove that $b+c=bc$ for any two infinite cardinals $b,c$?
Prove that if $a^2=a$ for each infinite cardinal $a$ then $b + c = bc$ for any two infinite cardinals $b,c$.
I tried $b+c=(b+c)^2=b^2+2bc+c^2=b+2bc+c$, but then I'm stuck there.
If you can compare $b$ and $c$, then suppose without loss of generality that $b\leq c$. Then $$bc \leq cc = c \leq b+c \leq c+c = 2c \leq bc.$$
The last inequality because we are assuming $b$ and $c$ are both infinite, so $2\leq b$; the equality $cc=c$ by assumption.
Added${}^{\mathbf{2}}$. From $a^2=a$ for all infinite cardinals, one may deduce the Axiom of Choice (this is a theorem of Tarski's), which in turn is equivalent to the fact that we can compare $b$ and $c$.
If you don't want to go through AC in order to assume comparability of $b$ and $c$, then I would have had some trouble with the problem, though Apostolos's answer together with your $b+c = b+bc+c\geq bc$ does tie it together neatly.
Added. In ZF, the Axiom of Choice is equivalent to the statement that given any two sets $A$ and $B$, either $A$ injects into $B$ or $B$ injects into $A$ (that is, the cardinalities of $A$ and $B$ are comparable). Whether or not we can assume that two cardinals are comparable may depend on what one means by "cardinal".
By "cardinal", I understood a cardinal number, which means an ordinal that is not bijectable with any strictly smaller ordinal, where ordinals are ordered by $\in$ (this is the definition in Jech's Set Theory, under Alephs, page 24: "An ordinal $\alpha$ is called a cardinal number if $|\alpha|\neq|\beta|$ for all $\beta\lt\alpha$." The definition precedes the discussion of the Axiom of Choice, which begins in page 38). The ordering among cardinals is induced by the ordering of ordinals. If that is what we mean by "cardinal", then any two cardinals are certainly comparable (even in ZF without AC), so we will either have $b\leq c$ or $c\leq b$, and there is no loss in generality in assuming the first. But as Asaf points out, when dealing with cardinal numbers in this sense, both $a^2=a$ and $b+c=bc=\max\{b,c\}$ are theorems in ZF.
Arturo's and Bill's answers assume that $b$ and $c$ are comparable, but that's not required.
First I will show that if $b>1$ and $c>1$ we have $b+c\leq bc$. This is a fairly easy point, if you use the definitions of the operations. Take two disjoint sets $B$ and $C$ such that $|B|=b$, $|C|=c$; let $b_1,b_2\in B$ ($b_1\neq b_2$) and $c_1,c_2\in C$ ($c_1\neq c_2$). Define a function $F:B\cup C\to B\times C$ as follows:
$$F(p) = \begin{cases} (p,c_1), &p\in B\\ (b_1,p), &p\in C\setminus\{c_1\}\\ (b_2,c_2), &p=c_1\end{cases}$$
It's easy to verify that this $F$ is an injection: Take any two elements $p,q\in B\cup C$ such that $p\neq q$. If one of them is $c_1$ observe that there is no other element that is sent to a pair that doesn't contain either $b_1$ or $c_1$, so their images are different. If $p,q\in B$ trivially $F(p)\neq F(q)$, (and likewise for two elements of $C$). If you have $p\in B$ and $q\in C\setminus\{c_1\}$, then $F(p)=(p,c_1)\neq(b_1,q)=F(q)$.
Now, you have shown in your question that $b+c=b+c+2bc\geq bc$. So we have that $b+c\leq bc$ and $bc\leq b+c$. The Cantor-Bernstein Theorem gives us that $b+c=bc$.
In fact $\rm\:\ b+c\: =\: b\:c\: =\: max\:\{b,c\}\ $ since $\rm \ b\le c\ \ \Rightarrow\ \ c \ \le\ b+c\ \le\ 2\:c\ \le\ b\:c\ \le\ c\:c\: =\: c$