Why a photon cannot change the crystal momentum of an electron? We know that absorption of a photon excites an electron from the valence band to the conduction band without changing its crystal momentum $\vec{k}$. Why can't a photon change the crystal momentum of an electron? 
 A: It can, and does.  However, the absorption of a photon with wavevector $\mathbf k$ causes an electron transition from $(\mathbf{k}_i,E_i)$ to $(\mathbf{k}_f,E_f)$ subject to the constraints that $E_f-E_i = \hbar c|\mathbf k|$ and $\mathbf{k}_f-\mathbf{k}_i = \mathbf k$.
Consider a transition corresponding to an energy difference of $2$ eV.  This would correspond to a wavevector magnitude of $|\mathbf k|\approx 10^{-2}$ nm$^{-1}$.  For comparison, the width of the Brillouin zone for a 1D lattice with lattice constant $a=0.5$ nm is $\frac{2\pi}{a} \approx 12.6$ nm$^{-1}$.
In general, for a photon-induced transition to cause an appreciable change in crystal momentum (on the scale of the width of the Brillouin zone), the energy of the transition would have to be enormous - far beyond the energy it would take to completely free the electron from the crystal.  For this reason, we usually make the convenient approximation that for photon-induced transitions, $\mathbf k_f-\mathbf k_i \approx 0$.
