Is it possible, and if so, how difficult would it be, to replace the volatile memory in Gameboy games with non-volatile memory?
Battery backed SRAM can be read and written on an individual location basis at full bus speed. Indeed some games use part of the cart ram as extra workspace and other parts as save space.

Flash on the other hand is written in blocks, typically involving a special sequence of operations and relatively long waits. Games that use flash for saving need to deal with this. So a modification that changed a game from battery backed SRAM to flash would require either modifying the game code or adding an intermediate ram buffer in the cart with an active process to copy it.

There is however a niche memory technology called "FRAM" made by cypress semiconductor (formerly ramtron). Fram is non-volatile but has SRAM like access behavior and is fast enough to sit directly on the bus of something like a gameboy. I can find links to gameboy flash carts that use FRAM in place of SRAM and I suspect with a bit of effort an interposer board could be made to allow replacement of the SRAM in an original cart with FRAM.

Note however that while FRAM has much better write endurance than flash it's endurance is still limited. If a game hammers the cart ram with constant writes to the same location this may limit the life of a FRAM based cart. In partice I doubt this will be a big problem though. It also seems to be rather expensive with mouser wanting £12 a shot in singles (a bit less in volume but still more than £8 a chip at the highest price break they list) for the smallest parallel FRAM chip.