For any finite index subgroup $G$ there is a nonzero integer $m$ so that $G$ contains the elementary matrices $e_{ij}(m)$ that have ones on the diagonal, $m$ at the $(i,j)$ entry and zeroes elsewhere. So the span of $\{gz-z: g\in G, z\in\mathbb Z^n\}$ contains all multiples of $m$ and ${\mathbb Z}^n_G$ is finite. Now just take a torsion-free finite index subgroup $G$.
Edit (by Igor Belegradek): I add some detail for my records. If $e_r$ is a vector in the standard basis, then it is easy to write $me_r$ in the form $v-e_{ij}(m)v$ for some $i\neq j$ and $v\in\mathbb Z^n$. It remains to show that for any finite index subgroup $G$ of $GL_n(\mathbb Z)$ all such $e_{ij}(m)$ lie in $G$ for some $m$. By making $G$ smaller we can assume it is normal and of index $k$. Since $e_{ij}(m)=e_{ij}(1)^m$, it suffices to assume that $k$ divides $m$.