I think the current mismatch between requested text extents and actual font rendering affects much more than EV Nova game, starting from, e. g., misplaced cursor positions in file dialogs with true type fonts used.
FWIW I was attempting to address similar issue here: https://gitlab.winehq.org/wine/wine/-/merge_requests/4406, although that MR didn't get much attention.
That was also working in Proton for a longer time.
While looking at your MR I can probably see some things missed in mine, I wonder if plainly passing different format (actual_format instead of requested format) to font_funcs->get_glyph_outline can work right? That affects the format of the returned data, I think we should strictly return the data in the requested format? While GGO_METRIX should return the sizes which correspond to the font de-facto anti aliasing determined when the font is selected to DC.