Some rather confused/unconnected thoughts from me:
The terrain
shape is controlled by the heightmap.raw files. The actual
height of the terrain is controlled by the terrain scale in the heightdata.con, e.g.
Those are x/y/z, with the y value (here 0.005) being the vertical scale. I believe this is in metres, giving the vertical resolution of the heightmap. It's perhaps worth mentioning here that the '2' in the x and z values is what most people mean when they talk about "scale 2" maps.
So there are two ways of scaling terrain: scaling the image itself, as Jonny suggested, or changing that number.
However, for optimal height resolution the heightmap should be already using the full range, meaning you won't be able to scale it up without creating plateaus at the heighest and/or lowest points. I don't know if the BF2 editor creates heightmaps like this or not though.
Having said all that, this is not the way you should be scaling the terrain. Unlike collisions, the visuals do not work from the heightmap.raw/heightdata.con but rather use the terraindata.raw file. This is what gets created when you save "compiled terrain" in the editor. So even if you do change the scaling manually, you will still have to open the map in the editor to create that .raw file. If you don't, the ground will still appear in the old location, but you'll be walking around in mid air.
So... if you're wanting to change the vertical scale, you're much better off doing it in the editor to start with.
If you're just wanting to find the maximum height of the map then you'll need to combine that vertical scaling value with the maximum height of the heightmap. Which you can find easily either in photoshop or by writing a little script.