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 $\{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$.

<b>Edit</b> (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$.