When you say ecm you mean the module in the engine bay in front of the fuse/power center?
If so, dealers possibly other shops, can change the vin, per post above but they may not do it some 'policy' or in order to sell you a new one or repair your old one.
Repairing it if it can be fixed should happen at a dodge dealership or chyrsler dealer, other shops MIGHT be able to do it I don't know but those are your best bets for equipment/compentancy/experience. If it can be repaired it might be as simple as a software flash/update I don't know.
If you want to go back for the other parts, skim module BCM the skim is a cylinder shaped device with a squarish backing and should be next to the ignition lock cylinder. The BCM, from my parts reference is around the glovebox area, haven't actually been in there enough to have seen it. I think I had a source that said it was behind the junction box driver's kickpanel, not sure though.
Odometer, mileage is stored in the BCM along with the vin# again, your problems are probably because the ecm you got has the other car's vin# in it, I can't check my references to see if it has any access to the skim/sentry key data now, off to work, but I don't believe it does.