Sowohl leben als auch wohnen sind Verben, die ihr Perfekt mit haben bilden. Demnach sind einige Vorschläge aus deiner Liste falsch.
Auch vor langer Zeit bedeutet nicht, was du ausdrücken möchtest. Statt for a long time ist die korrekte Übersetzung a long time ago – ein Falscher Freund.
Das Adverb zum Adjektiv lang ist lange.
Mit all diesen Punkten im Hinterkopf ist klar, dass du eigentlich nur noch einen Satz ein wenig umstellen musst:
Sie haben lange in XXX gewohnt.
Sie haben lange in XXX gelebt.
Die beiden Verben sind zwar nicht identisch aber ähnlich genug, sodass beide hier möglich sind. Wenn ich wählen müsste, würde ich gewohnt sagen, wenn es hauptsächlich ums Wohnen geht (aber Arbeit, Schule, Einkaufen, Ausgehen woanders stattgefunden hat), und gelebt wenn sich auch der Großteil des Lebens dort abgespielt hat.
Gegebenenfalls sollte statt des Perfekts Präteritum gewählt werden; das gilt umso mehr je nördlicher in Deutschland, je schriftlicher und je förmlicher die Kommunikation. Diese Fälle wären dann:
Sie lebten lange in XXX.
Sie wohnten lange in XXX.