It is not necessarily true that $(g \circ f)_* = id$. You have shown that $f_* \circ g_* = (g \circ f)_*$ is conjugation by some element $a \in \pi_1(X,x_0)$. This means that $f_* \circ g_*$ is an isomorphism which implies that $g_*$ is injective and $f_*$ is surjective. Similarly you see that $g_* \circ f_*$ is an isomorphism which implies that $f_*$ is injective and $g_*$ is surjective. Thus both $f_*, g_*$ are isomorphisms.
Remark:
If you know some category theory, then you see that the general pattern is this: You have morphisms $u : A \to B$ and $v : B \to A$ such that $i = v \circ u :A \to A$ and $j = u \circ v : B \to B$ are isomorphisms. Then $u,v$ are isomorphisms (but $v \ne u^{-1}$ unless $i = id$).
To see this, note that $v \circ (u \circ i^{-1}) = id_A$ and $(j^{-1} \circ u) \circ v = id_B$, thus $j^{-1} \circ u = (j^{-1} \circ u) \circ id_A = (j^{-1} \circ u) \circ v \circ (u \circ i^{-1}) = id_B \circ (u \circ i^{-1}) = u \circ i^{-1}$. This shows that $v$ is an isomorphism with inverse $v^{-1} = j^{-1} \circ u = u \circ i^{-1}$. But then also $u = v^{-1} \circ i$ is an isomorphism with inverse $u^{-1} = i^{-1} \circ v = v \circ j^{-1}$.
Your definition of $f$ is correct. (I will assume your definition of the map $\Pi\times_X \Pi\rightarrow X\times X$ is the intended one as this seems to me the only reasonable choice.) For notational convenience, given $p:[0, 1]\rightarrow X$, define $\tilde p$ to be the unique lift to $\Pi$ of $c_{p(0)}\times p:[0, 1]\rightarrow X\times X$ that starts at $e(p(0))$. In particular, we have $f[p]=\tilde p(1)$.
Now, given $([\gamma], [\eta])\in\tilde X\times_X\tilde X$ with representatives $\gamma, \eta:[0, 1]\rightarrow X$ (so in particular $\gamma(0)=\eta(1)$), we wish to show that $f[\gamma\bullet\eta]=m(f[\gamma], f[\eta])$, ie that $\widetilde{\gamma\bullet\eta}(1)=m(\tilde\gamma(1), \tilde\eta(1))$. Recall that $\widetilde{\gamma\bullet\eta}$ is the unique lift to $\Pi$ of $c_{\eta(0)}\times (\gamma\bullet\eta)$ that starts at $e(\eta(0))$, and note that $c_{\eta(0)}\times (\gamma\bullet\eta)=(c_{\eta(0)}\times\gamma)\bullet(c_{\eta(0)}\times\eta)$. Hence, for $\theta\in[0, 1]$, we have that $\widetilde{\gamma\bullet\eta}(\frac{\theta}{2})$ coincides with the unique lift to $\Pi$ of $c_{\eta(0)}\times\eta$ that starts at $e(\eta(0))$, ie with $\tilde\eta$. In particular, $\widetilde{\gamma\bullet\eta}(\frac{1}{2})=\tilde\eta(1)$, and hence, for $\theta\in[0, 1]$, we have that $\widetilde{\gamma\bullet\eta}(\frac{1+\theta}{2})$ coincides with the unique lift to $\Pi$ of $c_{\eta(0)}\times\gamma$ that starts at $\tilde\eta(1)$. In particular, $\widetilde{\gamma\bullet\eta}(1)$ is the endpoint of the unique lift to $\Pi$ of $c_{\eta(0)}\times\gamma$ that starts at $\tilde\eta(1)$.
Hence, by uniqueness of lifts, to show that $\widetilde{\gamma\bullet\eta}(1)=m(\tilde\gamma(1), \tilde\eta(1))$, it suffices to exhibit a lift to $\Pi$ of $c_{\eta(0)}\times\gamma$ that starts at $\tilde\eta(1)$ and ends at $m(\tilde\gamma(1), \tilde\eta(1))$. We claim $\tilde p:[0, 1]\rightarrow\Pi$, given by $\theta\mapsto m(\tilde\gamma(\theta), \tilde\eta(1))$, defines such a lift.
First note that $\tilde p$ is well-defined. To see this we must check that $s(\tilde\gamma(\theta))=t(\tilde\eta(1))$ for each $\theta\in[0, 1]$. But indeed, recall that $\tilde\gamma$ is a lift of the path $c_{\gamma(0)}\times\gamma$, so – for each $\theta$ – $\pi(\tilde\gamma(\theta))=(\gamma(0), \gamma(\theta))$, and in particular $s(\tilde\gamma(\theta))=\gamma(0)$. Likewise, $\tilde\eta$ is a lift of the path $c_{\eta(0)}\times\eta$, so $\pi(\tilde\eta(1))=(\eta(0), \eta(1))$, and in particular $t(\tilde\eta(1))=\eta(1)=\gamma(0)$, as desired.
Now we must show that $\tilde p(0)=\tilde\eta(1)$ and that $\tilde p(1)=m(\tilde\gamma(1), \tilde\eta(1))$. The latter condition is immediate, and to see the former note that, by definition of $\tilde\gamma$, we have $\tilde\gamma(0)=e(\gamma(0))=e(\eta(1))$. Hence $\tilde p(0)=m(\tilde\gamma(0), \tilde\eta(1))=m(e(\eta(1)), \tilde\eta(1))=\tilde\eta(1)$, as desired, where the last equality follows from the groupoid identity $m(e\times\text{id})=\text{id}$.
Finally, we need only show that $\pi\circ\tilde p=c_{\eta(0)}\times\gamma$, ie that $\tilde p$ really is a lift of $c_{\eta(0)}\times\gamma$. But indeed, for $\theta\in[0, 1]$, by definition of the map $\Pi\times_X\Pi\rightarrow X\times X$ and the fact that $m$ is a map over $X\times X$, we have $\pi(\tilde p(\theta))=\pi(m(\tilde\gamma(\theta), \tilde\eta(1)))=(s(\tilde\eta(1)), t(\tilde\gamma(\theta)))=(\eta(0), \gamma(\theta))=(c_{\eta(0)}\times\gamma)(\theta)$, as desired, where the second to last equality follows from the computations in paragraph 4. This concludes the proof.
Best Answer
It is trivially not full in general--for instance, since $\Pi_{\leq 1}$ is a groupoid, every morphism in the image of the functor must be an isomorphism. Or, for instance, if $x,y\in X$ are in different path-components, then there are no morphisms from $x$ to $y$ in $\Pi_{\leq 1}$ but there is always at least the trivial homomorphism between $\pi_1(X,x)$ and $\pi_1(X,y)$. Even if you restrict the target category to have only isomorphisms as the morphisms, it is not full: for instance, every morphism from a point $x$ to itself gets sent to an inner automorphism of the group $\pi_1(X,x)$, so if $\pi_1(X,x)$ has outer automorphisms, the functor will not be full.
Slightly less trivially, it is not faithful in general. For instance, a path from a point $x$ to itself gets sent to the inner automorphism of $\pi_1(X,x)$ given by conjugation by that path. In particular, if $\pi_1(X,x)$ is abelian, then all such paths get sent to the identity map.