Perfect, locally free groups exist. Such a thing has vanishing $H_1(G,\mathbb Z)$, has $H_p(G,M)=0$ for all $p\geq2$ and all $M$, and is not free.
A. J. Berrick constructs an explicit example here. If you prefer an example where $H_1(G,\mathbb Z)$ is free and non-zero, just consider the free product of a perfect, locally free group with a non-trivial free group.