I also read a few times already that BF2 will crash if it is set to the default refresh rate of 60Hz and windows + driver + screen does not support this refresh rate.
If you canĀ“t select a different refresh rate in the launchers video settings, you could try to change it manually in "my documents\forgotten hp2\profiles\default\video.con" to 48Hz, like your OS uses.
Adding to what he said, I remember a few years ago I had two "video.con" files.
I think two of them appeared was because I just kept uninstalling/reinstalling - the files system just got confused.
So just check if you have two "video.con" files.