Product of 2-digit numbers
It's possible. To restate the goal, we want a cycle of digits $d_1 \to d_2 \to d_3 \to \ldots \to d_{31} \to d_1$, such that $$ (d_1 d_2) (d_2d_3) (d_3d_4) \ldots (d_{31} d_1) $$ is a perfect square. We can build this up by combining small cycles. First,
$$2 \to 7 \to 2$$
is a nice move, as it gives $27 \cdot 72$ -- dividing out squares, we have $3 \cdot 2 = 6$. We can also do the move $$ 2 \to 5 \to 2 $$ which is $25 \cdot 52$, or just $13$ remaining. And we also have $$ 2 \to 6 \to 9 \to 2 $$ which is $26 \cdot 69 \cdot 92$, or $2 \cdot 13 \cdot 3 \cdot 23 \cdot 23 \cdot 4$, or just $6 \cdot 13$. So all of these together give a perfect square cycle of total length $2 + 2 + 3 = 7$: $$ \underbrace{2 \to 7 \to 2 \to 5 \to 2 \to 6 \to 9 \to 2}_{\text{perfect square cycle}}. \tag{a} $$
But that's not good enough -- we need another way of getting a perfect square, because cycles of length $7$ can't add up to get total length $31$. So here's another cycle: $$ \underbrace{2 \to 4 \to 2 \to 1 \to 2}_{\text{perfect square cycle}}. \tag{b} $$ Just to verify this, we have $24 \cdot 42 \cdot 21 \cdot 12$, dividing out squares and factoring $6 \cdot (6 \cdot 7) \cdot (3 \cdot 7) \cdot 3$, so everything ends up squared. This time, the cycle has length $4$. (This was a bit more complicated than necessary. We could just have done $2 \to 5 \to 2 \to 5 \to 2$, or $2 \to d \to 2 \to d \to 2$ for any $d$, for that matter.)
Then we are done: by starting from $2$ and traversing cycle (a) one and cycle (b) six times, the total length is $$ 7 + 4 + 4 + 4 + 4 + 4 + 4 = 31. $$
Some intuition (if you know graph theory)
The whole length $31$ cycle can be thought of as a cyclic path in the complete graph with $9$ vertices, where each vertex is a different digit. The path of length $31$ then decomposes into a bunch of cycles of small length ($\le 9$). The procedure to decompose into small cycles is as follows: for any cycle of length greater than $9$, it must repeat some vertex twice; therefore, it splits into two cycles from the repeated vertex.
So the goal is basically to find a bunch of small cycles whose total length is $31$, and which multiply to a perfect square. Hence, my approach was to start looking for small cycles and what they multiply to, and then try to get them to cancel out.