[guided]We have the congruence
\begin{align*}
\left(\tfrac{ab}{p}\right) \equiv \left(\tfrac{a}{p}\right)\left(\tfrac{b}{p}\right) \pmod p
\end{align*}
from Step 2, but the theorem asserts **equality** in $\mathbb{Z}$, not merely congruence. The bridge is that both sides are elements of $\{-1, 0, 1\}$ by definition of the Legendre symbol. So we need: if $u, v \in \{-1, 0, 1\}$ with $u \equiv v \pmod p$, then $u = v$.
Equivalently: the three integers $-1, 0, 1$ represent distinct residue classes in $\mathbb{Z}/p\mathbb{Z}$. The pairwise differences are
\begin{align*}
0 - (-1) = 1, \qquad 1 - 0 = 1, \qquad 1 - (-1) = 2.
\end{align*}
For these differences to be divisible by $p$, we would need $p \mid 1$ (impossible for any prime) or $p \mid 2$. The second forces $p = 2$, which contradicts the standing hypothesis that $p$ is odd. So all three differences are non-zero mod $p$, and the three residue classes are distinct.
This is a delicate but essential point: **oddness of $p$** is used here in the upgrade from congruence to equality. For $p = 2$, the Legendre symbol is not usually defined (and when extended, multiplicativity would require separate checking). The case $p$ odd is the full content of the theorem.
It is worth noting that if either $p \mid a$ or $p \mid b$, then both sides of the conclusion vanish: $\left(\tfrac{a}{p}\right) = 0$ (say) forces the right-hand side to be $0$, and $p \mid ab$ forces the left-hand side to be $0$. The nontrivial content is when $(a, p) = (b, p) = 1$, where both sides lie in $\{\pm 1\}$ and the argument above reduces to the simpler fact that $1 \not\equiv -1 \pmod p$ (again because $p \ne 2$).[/guided]