But the takeaway here is simple. Just lower your FOV. It's a simple setting in the display tab of the video settings.
Nope, that's exactly the opposite of what you want if using a wide screen, because that takes the advantage of seeing more because of a wider screen away again.
The wider screen would allow for a higher FOV without distortion, but the game seems not to handle that correctly.
As pointed out above, you could put your nose on the screen, that would allow for almost 180° fov. But it won't handle the perspective correctly, as the rendering is based on some assumed viewing distance. From my numbers above, assuming 80cm of viewing distance and 60cm wide display 40° would be a perfect fit. So maybe developers choose to use 50° as a default setting, accepting a litte fish eye effect on the borders.
If you now switch to a 21:9, you basically still have the same 50° with already little fisheye although your monitor would allow 52° without fisheye. If you now increase the FOV further it causes even more fisheye, because it doesn't "correct" to your display size.
I guess my try to explain it isn't the best, but sadly i can't find better words to explain it.
Another factor that ideally should be taken into account by the engine is if the monitor is flat or curved. The wider a flat monitor is, the more fisheye you will get, because you are projecting a curved plane view onto a flat plane. However if the monitor is curved, it compensates that projection error. So if the rednering assumes a flat display and therefore causes fisheye effect, on a curved display it becomes even worse. Imho the rendering algorithm should always think the display is curved. So if you output onto a flat display the physical issue of being flat will perspectively cause the fish eye effect (the edges of the screen are further away from your perspective than its center).
Or lets look at the other extreme, maybe that'll make it more understandable. Placing multiple curved monitors with 1000R in a full circle with 1m radius would allow to provide a fov of full 360° without any fisheye effect, if the engine knows about that setup and takes it into account while rendering. From what was described here, that will not work with 7d2d, because it doesn't care for that effect but seems to use some hardcoded assumptions on display size and viewing distance.
The screenshots of Assassins Creed that @Naz posted in the other linked thread show, how it should look like on a wide screen compared to a less wide screen if done correctly. No increased distortion, but still a wider fov.
I'm interested into this issue, because i also plan to switch to 21:9 soon. And in 2020 i expect games to be able to deal with that (however, there are games out that there that do it even worse).
Edit: Oh i just had another idea, where you can see the reverse effect: Beamers. They usually have a minimum and maximum projection distance. Within this range they compensate the anti-fish-eye effect that physically results by projecting onto a flat surface. If you exceed the maximum distance, they can't compensate that fully even more.
Basically the same effect like flat maps of earth are (heavily) distorted on its edges, because it's impossible to project the surface of a sphere onto a flat surface without distortion. But you can project just segments of it with less distortion. That's why russia looks bigger than africa on a flat map. But if you look on a globe, where no distortion is caused, because it is projected onto an actual sphere, you can see that in fact russia is not even half the size of africa.
Edit 2: if anybody wonders why i refer to aspect ratio and then only refer to the width of a monitor... that's exactly the issue. Basically there are 2 FOVs, a vertical and a horizontal. The slider changes the horizontal FOV, but what about the vertical one?
3440x1440 and 2560x1440 have the same height! So the vertical FOV needs to stay the same, but the horizontal one has to be increased on the wider screen.
How does the game set the vertical FOV? If it assumes that the vertical value is 9/16 of the horizontal one, THAT's the mistake. Increasing both makes the viewport higher than your screen is. So by the projection the image is not stretched horizontally but instead shrunk vertically to still fit on the screen with higher aspect ratio.