Maybe your shader problem can be fixed by renaming the 'shaders_client.zip.backup' file in battlefield2\mods\fh2 to 'shaders_client.zip' (see lower part of the screenshot), but before you do always make a backup of these 2 files in case something goes wrong.
After doing so go to ''my documents\battlefield 2\mods\fh2\cache'' (default directory) and remove all maps named '{D7B71EE2-D645-11CF-0E71-0FB5A1C2C535}_3153_1' or similar from this directory.
Start up FH2 with the FH2.exe shortcut on your desktop, adjust the game graphic settings to your liking and start up a local game to allow fh2/bf2 to reset and optimize it's shaders.
If everything goes as planned your set to go and enjoy FH2 once again without any texture problems. Good luck MasterT.
Much appreciated Dukat for uploading this really helpfull picture.