I got Gemmy to the point where she plays chess semi-acceptably (at least to my shitty standard).
For those who were interested yesterday, I ended up abandoning the FEN format and instead using this to track the game state (along with a few other extra attributes just to indicate who has the current turn, check/checkmate/stalemate status:
White: K(E1), Q(D1), R(A1, H1), B(C1, F1), N(B1, G1), P(A2, B2, C2, D2, E2, F2, G2, H2)
Black: K(E8), Q(D8), R(A8, H8), B(C8, F8), N(B8, G8), P(A7, B7, C7, D7, E7, F7, G7, H7)
I have no idea if that format has a proper name or not, but I just noticed that Gemmy kept translating the FEN into this format in the thinking block (wasting a bunch of tokens/time in the process). So this let it skip the translation part and just think about the moves more which made her a lot more competent.
The UCI format for making moves remains because it seems okay with that.