Hello everyone. I've got some news about the widescreen fix:
Thanks to the raymap source code (which is able to decode Hype's sna-format) I now understand enough about the SNA-format to be able to change the FOV in there

Here's how the headers of each block in the SNA-file look:
The file starts with a block of size 0 with only the header (yellow). The next block has a header (green), and since its size is >0, it has a sub-header (blue) with information about the compression, followed by the actual compressed block (white).
It turns out, that the block is compressed with the lzo1x algorithm. I have written a little script (in python - because it's the only programming language i know) that decompresses each of the blocks, changes the
isCompressed part of the sub-header from 1 to 0 and replaces the
compressedSize with the
decompressedSize (it also replaces
compressedChecksum with
decompressedChecksum, but that is not necessary). In the end, we get a decompressed version of the SNA-file that will actually work with the game just like the original file

Note that if you want to make any changes to the decompressed block, you have to adjust the
decompressedChecksum accordingly (which is adler32 btw.). I never tried altering the
size of the decompressed block (it's not necessary for changing the FOV) and I'm not sure if it breaks anything in terms of memory allocation (maybe the actual header - not just the sub-header - has to be changed as well).
Anyway.. I have attached the python script. Feel free to try it out (note that it requires the python-lzo module).
Next thing, I'll write a little tool (probably also in python) to be able to change the FOV in fix.sna and other SNA-files to fix the bug, where the FOV changes after using one of the sun-dials. This will also make the original modifications to MaiDFXvr_bleu.exe less "hacky"
Fun fact: remember how I spend ages debugging the game trying to figure out, why the FOV changes after using the sundials? In the end, I found out that using the sundials changes the FOV from 1.6 to 3 in steps of 0.3 and then back from 3 to 1.6 in steps of 0.08. Once you know this, you can easily find this information in Raymap (see screenshots)