I don´t even have bf2 but I read somewhere on the forum there is a file or folder you should remove if you have installed a new monitor and can´t get it to run. I think it is located in document and setting and your profile and application data and then some folder. remove it and start your game again and see if it helps. backup the file first. Might save you the trouble of a reinstall. A reinstall won´t delete this file so if it is this file causing the problem it won´t help with a reinstall so start with removing the file.
It might even say it in this thread but i´m to lazy to check or search right now.
EDIT: Well I did a search and this is what I got to completely remove it:
To delete all of BF2 from your system:
Open My Documents.
Right-click on the Battlefield 2 folder and choose Delete.
To delete the game files (in the default location):
Open My Computer.
Open the C drive.
Open the Program Files folder.
Open the EA GAMES folder.
Right-click on the Battlefield 2 folder and choose Delete.
Close all open windows.
To edit the registry and remove Battlefield 2:
Click on the Start button.
Click on Run.
Type regedit in the text field.
Click File and then choose Export.
Name the file Backup and make sure the Export Range is set to All.
Click Save; you will now be returned to the Registry Editor window.
Click the plus sign next to HKEY_LOCAL_MACHINE.
Click the plus sign next to Software.
Click the plus sign next to DICE.
Right-click on the Battlefield 2 folder and choose Delete.
Click the plus sign next to Electronic Arts.
Right-click and choose Delete on any Battlefield 2 folders.
Click the plus sign next to Microsoft.
Click the plus sign next to Windows.
Click the plus sign next to CurrentVersion.
Click the plus sign next to Uninstall.
Right-click on the key named {04858915-9F49-4B2A-AED4-DC49A7DE6A7B} and choose Delete.
A Confirm Key Delete window will appear, choose Yes.
Close the WindowsRegistry Editor.
Battlefield 2 is now completely removed from your system.