In Quantum Mechanics it is said that the Galileo transformation $$\mathbf{r}\mapsto \mathbf{r}-\mathbf{v}t\quad \text{and}\quad \mathbf{p}\mapsto \mathbf{p}-m\mathbf{v}\tag{1}$$ is given by the operator $$G(\mathbf{v},t)=\exp\left[\dfrac{i}{\hbar}\mathbf{v}\cdot (m\mathbf{r}-\mathbf{p}t)\right].\tag{2}$$ Now I want to understand how does one show that this is the operator that implements the Galileo transformation.
I just can't understand, because for me, since we want $\mathbf{r}\mapsto \mathbf{r} -\mathbf{v}t$ it seems that the operator should just be a translation by $\mathbf{v}t$ which would be
$$G(\mathbf{v},t)=\exp\left[\dfrac{i}{\hbar}\mathbf{p}\cdot \mathbf{v}t\right]$$
but that's not it. There's also the $m\mathbf{r}$ part which I don't understand where it comes from.
I've tried two things: first, defining $\tilde{\psi}(\mathbf{r},t)=\psi(\mathbf{r}+\mathbf{v}t,t)$ to be the transformed wavefunction. It also leads me to the translation only.
The second thing was to define
$$G(\mathbf{v},t)=1+\dfrac{i}{\hbar}\varepsilon(\mathbf{v},t)$$
with ${\varepsilon}$ infinitesimal and impose the conditions
$$G(\mathbf{v},t)^\dagger \mathbf{R}(t)G(\mathbf{v},t)=\mathbf{R}(t)-\mathbf{v}t$$ $$G(\mathbf{v},t)^\dagger \mathbf{P}(t)G(\mathbf{v},t)=\mathbf{P}(t)-m\mathbf{v}$$
in terms of the infinitesimal operator this becomes
$$\dfrac{i}{\hbar}[\mathbf{R}(t),\varepsilon(\mathbf{v},t)]=\mathbf{v}t,\quad\dfrac{i}{\hbar}[\mathbf{P}(t),\varepsilon(\mathbf{v},t)]=m\mathbf{v}$$
but this doesn't leads very far.
So what is the reasoning behind the $G$ usually presented being the operator that implements Galileo transformations?