A partial answer is given here, but I have a different solution that uses induction on the rank of $H_1(X;\mathbb Z)$.
You are absolutely correct that a homeomorphism $g : X \to X$ for which $g_* : H_1(X) \to H_1(X)$ is the identity leaves cycles invariant. We'll use a couple facts (easy to verify/convince oneself of):
- Fact 1. If $v_0$ and $v_1$ are adjacent vertices of a graph $X$, and if $e$ is an edge connecting $v_0$ and $v_1$, then $X$ is homotopy equivalent to the graph $X/e$.
- Fact 2. In the homotopy equivalence above, if $v_0$ has degree $d_0$ and $v_1$ has degree $v_1$, then the degree of the vertex formed by $e$ is $d_0 + d_1 - 2$.
Now, let's assume the vertices of $X$ are all of degree $\geq 3$. They can't be of degree $1$ by hypothesis, and if a vertex has degree $2$, the graph $X$ is homeomorphic to the graph with that vertex removed and replaced with a single edge.
Let's suppose though that $H_1(X) = \mathbb Z^2$. Then $X$ is homotopy equivalent to $\mathbb S^1 \vee \mathbb S^1$ by Fact 1. If $X \neq \mathbb S^1 \vee \mathbb S^1$, then the single vertex $w$ of $\mathbb S^1 \vee \mathbb S^1$ comes from collapsing an edge connecting two vertices; since $w \in \mathbb S^1 \vee \mathbb S^1$ has degree $4$, by Fact 2 and our assumption on the degrees of the vertices of $X$, the two vertices $v_0$ and $v_1$ collapsing to form $w$ must each have degree $3$, and can't split further. There are therefore three possibilities for $X$:
- $X = \mathbb S^1 \vee \mathbb S^1$;
- $X$ is a pair of circles connected by a line segment;
- $X$ is a pair of vertices connected by three different edges.
Case 1. $H_1(X)$ is generated by the two circles, and if $g_*$ is the identity, $g$ leaves each circle invariant and preserves their orientation. Clearly the vertex $w$ is fixed by $g$. Since $G$ is finite, there is a $k \geq 1$ for which $g^k = \mathbb{1}$. Take one of the circles and let $x \in \mathbb S^1 \subset X$ be a point other than the vertex. The finite collection of points $\{v, x, g(x), g^2(x), \ldots, g^{k-1}(x)\}$ on $\mathbb S^1$ is permuted by $g$ in a way that preserves its ordering, but possibly shifts the collection. In fact, since $g(v) = v$, there is no shifting, and thus $g$ fixes all of these points: $g(x) = x$. It follows that $g = \mathbb{1}_X$.
Case 2. The group $H_1(X)$ is generated by the two circles, and therefore $g$ leaves the circles invariant. It follows that the vertices are fixed. The argument from here is the same as in Case 1.
Case 3. The group The group $H_1(X)$ is generated by two pairs of edges. The edges themselves are permuted by $g$, but the pairs of edges generating $H_1(X)$ are invariant. It follows that each of the three edges is invariant. If the vertices are swapped by $g$, then the orientations of the cycles are reversed, so $g_* = -\mathbb{1}$. So the two vertices are fixed. Showing that $g$ is the identity on each edge is now essentially the same argument as in Case 1.
This proves the result for $n=2$.
Now suppose we've proven the result for $n-1$. Let $X$ be a graph whose vertices all have degree $\geq 3$ and for which $\mathrm{rank}(H_1(X)) = n$. $H_1(X)$ is generated by $n$ cycles in $X$, and if $g_* : H_1(X) \to H_1(X)$ is the identity, the homeomorphism $g : X \to X$ leaves these cycles invariant. Choose one of these cycles $A$. Then $A$ is a wedge sum of circles; assume without loss of generality that $A = \mathbb S^1$. Then $A$ is a subgraph of $X$, and the long exact sequence of relative homology groups for $(X,A)$ becomes:
$$
0 \to \mathbb Z \to \mathbb Z^n \to H_1(X,A) \to 0
$$
It follows that $H_1(X,A) \cong \tilde H_1(X/A) \cong \mathbb Z^{n-1}$. Since the vertices of $A$ in $X$ have degree $\geq 3$, the vertices of the graph $X/A$ have degree $\geq 2$; we may assume that their degree is $\geq 3$ without losing topological information. Since $g(A) = A$, $g$ descends to a homeomorphism $\hat g : X/A \to X/A$ whose induced map $\hat g_* : H_1(X/A) \to H_1(X/A)$ is the identity. By induction hypothesis, $\hat g$ is the identity on $X/A$. It follows that $g(x) = x$ for all vertices $x \in X$ and all $x$ on edges of $X$ not contained in $A$. But $g|_A$ fixes the vertices. By the same argument used in the base case for $n=2$, $g|_A$ is the identity as well, so $g$ is the identity on $X$.
The same argument applies verbatim if the coefficient group is instead $\mathbb Z_m$ for $m > 2$ But for $m=2$, the base case argument breaks down: the map $-\mathbb{1} : H_1(X;\mathbb Z_2) \to H_1(X;\mathbb Z_2)$ is also the identity, so a homeomorphism that fixes the cycles but reverses their orientation would induce the identity map on homology with coefficients in $\mathbb Z_2$.