You dont have to abandon ANY cities to begin with. I managed to hold every Carthaginian city until about 70 Years into the game when I lost Cordoba, but lets face it. Thats such an isolated province its pointless to fight for. During this 70 years aswell as holding all cities I conquered Sicily and the house of Brutii. the trick is to capture the Greek/Sicilian city of Syracuse. from this heavily fortified city, you can hold out against the Scipii until reinforcements from Carthage.