Does anyone know where the ff ending came from?
The Russian pronunciation, which is [rʌˈmanəf], via French.
I favor literal letter-by-letter transliterations, so I prefer Romanov.
Yes, if you adhere to orthographic transliteration, you logically should write Roman
eff. That's why I write Romanov.
The funny thing is that while the Germans would pronounce "Romanov" with a v as Romanoff, they spell it as Romanow, pronounced /romanov/. (But Slavic place-names in eastern Germany that end in -ow, e.g. Güstrow, are actually pronounced with the ending /o:/!)