the best solution I can think of is to create an overlay to replace the menu. At the start I would place the new menu over the existing one and at the end I would try to disable the original UI and adding additional features. The advantage of this would be an entirely outsourced and global UI of which we have full control of.
If you replaced the menu module of the game this is exactly what you'd have. @Tsunamix you need to write a DLL that injects itself and takes over the menu module -i.e replaces the function pointers in the module struct with your own for rendering, input etc.
rcxrdx started doing some work on FF8 here, it would be something like this:
https://github.com/rcxrdx/FF8Modding/blob/master/src/Hooks.cppApart from you are only interested in the menu module, access to the script vars (someone will already know all of the var addresses for these things), and the rendering API (again must be known since there is a custom opengl renderer dll).
Edit: Don't forget ergonomy_joe has fully reversed most of the game to source already:
http://magnetiktank.blogspot.co.uk/This is probably all the info you need.