I think the answer to your question is that it is more appropriate to say that Crystal Momentum is defined modulo reciprocal lattice translations.
Let us say that the crystal has Bravais lattice vectors $ \{ e_i \} $ , $i=1,...,d$. We can construct the reciprocal lattice vectors $\{f_j\}$ satisfying $e_i . f_j = 2 \pi\delta_{ij}$. A general lattice translation is given by $a = \Sigma n_i$ $e_i$ , $n_i$ $\epsilon$ $\mathbb{Z}$.
These translations are generated by the "crystal momentum", $P = \Sigma P_j \hat{f_j}$.
Here $P_j$ is the component of crystal momentum along the $j$th direction on the reciprocal lattice. The translation operator is $T(a)$ = $T(\{n_i\})$ = $e^{iP.a}$ = $exp ( 2 \pi i\Sigma \frac{n_i P_i}{|f_i|})$ = $exp ( 2 \pi i\Sigma \frac{n_i (P_i + m_i |f_i|) }{|f_i|})$ , for any $m_i$ $\epsilon$ $\mathbb{Z}$ .
The last equality shows that the the same lattice translation is generated if we replace $\{ P_i \}$, the components of crystal momentum in reciprocal space, by $\{ P_i + m_i |f_i| \}$ (Or, $P$ is replaced by $P$ $+$ $\Sigma$ $m_i f_i$).
This means that "crystal momentum" (ie, the generator of lattice translations) is only defined modulo reciprocal lattice vector. Stated another way, the only eigenvalues of crystal momentum that need to be considered are the ones that belong to the first Brillouin zone.
The rest of what you say is correct. From the fact that $[T(\{ n_i \}), H] $ = $0$ $\forall$ possible lattice translations $\{ n_i \}$, we obtain that crystal momentum is conserved.
Also see : Unjustified claim in Kittel about Bloch functions (towards the end) for a 1-d version of the argument presented above, and a derivation of the Bloch theorem.