What's the difference between a factory image and a ROM? Why are ROMs flashable through recovery while factory images require fastboot?
The factory image is just the ROM that's on the phone when it leaves the factory. It sounds like you might be thinking about different kinds of ROMs.

When you download a stock ROM from the phone's manufacturer (or elsewhere), it usually includes the image for the system partition and one for the stock recovery. In contrast, when you download a custom ROM, it usually just includes the image for the system partition, and it's expected that you already have CWM, TWRP, or some other third-party recovery installed.

Obviously you need fastboot to flash the recovery - you can't overwrite the recovery when it's running - so you need fastboot to flash a factory image (when it includes the recovery and the system image), but not necessarily if you're just flashing the system image (from a custom ROM).

A ROM can be a custom ROM or a stock ROM (aka factory image). The difference only comes because of the different ways that first- and third-party ROMs are distributed.