Pretty much the same proof as in the commutative case shows that flat implies torsion-free for modules over a noncommutative ring $R$:
Let $a\in R$, not a right zero divisor. Then the map $\mu_a:R\to R$ given by $r\mapsto ra$ is an injective left $R$-module homomorphism. If $M$ is a flat right $R$-module, then $\operatorname{id}_M\otimes\mu_a:M\otimes_RR\to M\otimes_RR$ must also be injective. But this is isomorphic to the map $M\to M$ sending $m\in M$ to $ma$. So $a$ does not annihilate any non-zero element of $M$.
If $H$ is free on $n$ generators, then so is $\operatorname{Hom}(H,\mathbb Z),$ and $H\cong\operatorname{Hom}(H,\mathbb Z),$ so you really want $H\otimes G\cong \operatorname{Hom}(H,G).$
Let $X=\{x_1,\dots,x_n\}$ be the generators.
Every element of $H\otimes G$ can be written uniquely as a sum: $$\sum_i x_i\otimes g_i$$ for some tuple $(g_1,\dots,g_n).$ We can easily show $H\otimes G\cong G^n.$
Similarly, we can see an $f:H\to G$ is uniquely determined by $h(x_i)=g_i$ for $i=1,\dots,n$ and we can show $\operatorname{Hom}(H,G)=G^n.$
If $H$ is free but with an infinite cardinal $\alpha$ of generators, then it is still true that $\operatorname{Hom}(H,G)=G^\alpha,$ but $H\otimes G$ in that case is isomorphic to a subgroup of $G^\alpha$ where only finitely many of the $g_i$ are non-zero.
Thus, the cardinality of the groups are often (always?) different. For example, if $1<|G|\leq \aleph_0$ and $\alpha=\aleph_0,$ you have $H\otimes G$ with the cardinality $\aleph_0$ and $|G^\alpha|$ the cardinality of the continuum.
If $f_i:H\to \mathbb Z$ are defined by $$f_i(x_j)=\delta_{ij}=\begin{cases}1&i=j\\0&i\neq j\end{cases}$$
then the $f_i$ are a basis for $\operatorname{Hom}(H,\mathbb Z)$ and every element of $\operatorname{Hom}(H,\mathbb Z)\otimes G$ Can be written uniquely as:
$$\sum_i f_i\otimes g_i$$ for some $(g_1,\dots,g_n).$
Then the image of $f_i\otimes g_i$ under your homomorphism is the map that sends the basis element:
$$x_j\mapsto \delta_{i,j}g_i.$$
Show that this sends the representation of $G^n$ on the left to the representation of $G^n$ on the right.
A trivial extension: If $H=H_1\oplus H_2$ where $H_1$ is free with finite generators and every element of $H_2$ has finite order, and $G$ is a divisible group, then $\operatorname{Hom}(H,\mathbb Z)\cong\operatorname{Hom}(H_1,\mathbb Z)\cong H_1$ and $H\otimes G=H_1\otimes G.$
Best Answer
One is tempted (as I was originally), to argue as follows: since $M\cong M\oplus M\cong M\times M$, we have $$R = \mathrm{Hom}(M,M) \cong \mathrm{Hom}(M,M\times M) \cong \mathrm{Hom}(M,M)\times\mathrm{Hom}(M,M) = R\times R,$$ and stop there. The problem with the argument is that in some instances we are dealing with these objects as $\mathbb{Z}$-modules rather than as $R$-modules (specifically the isomorphisms are isomorphism from $\mathrm{Hom}(M,M)$ to $\mathrm{Hom}(M,M\times M)$ is, right now, just an isomorphism as $\mathbb{Z}$-modules), so some care needs to be exercised to make the argument actually work.
First, note that $M\cong M\times M$ as $\mathbb{Z}$-modules. Define a homomorphism $\varphi\colon M\to M\times M$ by maping $(m_i)$ to $\bigl((m_{2i-1}), (m_{2i})\bigr)$. That is, $(m_1,m_2,m_3,\ldots)$ maps to $\bigl( (m_1,m_3,m_5,\ldots),(m_2,m_4,m_6,\ldots)\bigr)$.
The elements of $R$ can be thought of as infinite "column-finite matrices"; that is, each endomorphism $M\to M$ corresponds to a family of functions $(\mathbf{f}_i)_{i\in\omega}$, with $\mathbf{f}_i\colon\mathbb{Z}\to M$; hence $\mathbf{f}_i = \sum_{j\in\omega}f_{ji}e_j$, where $e_j$ is the element of $M$ that has $1$ in the $j$th coordinate and $0$s elsewhere, $f_{ji}\in\mathbb{Z}$, and $f_{ji}=0$ for almost all $j$.
If we take an element of $\mathbf{f}=(f_{ij})$ of $R$, and compose it with the isomorphism $M\to M\times M$, we obtain a homomorphism $M\to M\times M$, given by $\bigl( (f_{i,2j-1}), (f_{i,2j})\bigr)$. So the map $\mathrm{Hom}(M,M)\to\mathrm{Hom}(M,M)\times \mathrm{Hom}(M,M)$ maps $(f_{ij})$ to $\bigl( (f_{i,2j-1}),(f_{i,2j})\bigr)$.
If we compose maps $\mathbf{f}=(f_{ij})$ and $\mathbf{g}=(g_{ij})$, we get the map $(h_{ij})$, where $$h_{ij} = \sum_{k=1}^{\infty}g_{ik}f_{kj}.$$ Since $f_{kj}=0$ for almost all $k$, the sum is finite and $h_{ij}$ makes sense.
This gives the action of $R$ on $\mathrm{Hom}(M,M)$. The action of $R$ on $\mathrm{Hom}(M,M)\times\mathrm{Hom}(M,M)$ is then given by $$ \mathbf{g}\bigl((f_{ij}),(f'_{ij})\bigr) = \bigl( \mathbf{g}(f_{ij}), \mathbf{g}(f'_{ij})\bigr) = \bigl( (h_{ij}), (h'_{ij})\bigr)$$ where $$h_{ij} = \sum_{k=1}^{\infty}g_{ik}f_{kj},\quad\text{and}\quad h'_{ij}=\sum_{k=1}^{\infty}g_{ik}f'_{kj}.$$ To see that the map from $\mathrm{Hom}(M,M)$ to $\mathrm{Hom}(M,M\times M)$ respects the action of $R$ (that is, that we get an $R$-module homomorphism, not merely a $\mathbb{Z}$-module homomorphism), let $(f_{ij})\in\mathrm{Hom}(M,M)$ and $\mathbf{g}\in R$. The element $\mathbf{g}(f_{ij})$ is mapped to $$\left( \Bigl(\sum_{k=1}^{\infty}g_{ik}f_{k,2j-1}\Bigr),\Bigl( \sum_{k=1}^{\infty}g_{ik}f_{k,2j}\Bigr)\right)$$
On the other hand, if we let $\mathbf{g}$ act on $\bigl( (f_{i,2j-1}), (f_{i,2j})\bigr)$, we get $$\mathbf{g}\left( (f_{i,2j-1}), (f_{i,2j})\right) = \left(\Bigl( \sum_{k=1}^{\infty}g_{ik}f_{k,2j-1}\Bigr), \Bigl( \sum_{k=1}^{\infty}g_{ik}f_{k,2j}\Bigr)\right),$$ that is, the same as the image of $\mathbf{g}(f_{ij})$. So the homomorphism $\mathrm{Hom}(M,M)\to\mathrm{Hom}(M,M)\times\mathrm{Hom}(M,M)$ given by $(f_{ij})\longmapsto ((f_{i,2k-1}),(f_{i,2k}))$ is actually a homomorphism as $R$-modules. Since the original map as $\mathbb{Z}$-modules was a bijection, so is this one, hence $\mathrm{Hom}(M,M)$ and $\mathrm{Hom}(M,M)\times\mathrm{Hom}(M,M)$ are isomorphic not only as $\mathbb{Z}$-modules, but also as $R$-modules. So we obtain: $$R = \mathrm{Hom}(M,M) \cong \mathrm{Hom}(M,M)\times\mathrm{Hom}(M,M) =R\times R,$$ with the isomorphism being an isomorphism of $R$-modules, as desired.