Out of the box, Battlefield 2 doesn’t support widescreen resolutions. However it does support setting the resolution on the command-line.
Modify the shortcut to add +szx and +szy resolution parameters,
"C:\Games\Battlefield 2\BF2.exe" +menu 1 +fullscreen 1 +szx 1680 +szy 1050
It also works with 1920×1200 resolution.