Are the custom ROMs different for different phones? Are custom ROMs different for different make of handsets? Or is there only one CyanogenMod for, say, Android 2.2?

Can someone please elaborate why a 'ROM' is called as such? I mean has it any similarity to Read-Only Memory?
The simple answer is Yes there are usually multiple versions of each Custom ROM. If not the ROM may be only usable on some devices. 

Usually for each device model (or group of very similar devices) there is one custom ROM version. The reason are the different hardware each device is equipped with. Like in your desktop computer each component needs a suitable driver for being used. This starts with the display which sometimes even changes from model revision to revision and ends with WLAN chip used. 
As space and memory are significant on a Smartphone a custom ROM only contains the drivers needed. 

Another reason for having different custom ROMS are the different cell phone standards. You have devices built for GSM/UMTS and some are designed to work with CDMA. The telephony stack has to be either the one or the other - again a reason for different ROMs.