I have noticied Carthies doing this myself, but they always seem to get over it after a while, so i have never seen it so drasticlay, (although this is probably because I am often shaking things up around Italia myself). If I was you I'd save the game at this point and then somehow cheat to give the two towns to the Carthies, and see if this shakes them up a bit. If that fails, try some increasingly large money injections (if they are anywhere near the red) untill they start to move.

BTW have you any idea wether or not those armies were formed before you put in your fixed money script (which is great by the way, thanks alot), cause I've sometimes noticied that if an AI nations economy gos down the drain they tend to get paralised, and make no attempt to use the troops they have (apparently they get so depresed by the though of a finite number of troops that they all give up and cry untill some nice guy comes and gives the a stiff double through the consoul ).