1) Make sure you always "cordova prepare..." to ensure your project's files are copied to the platform. ("cordova run" also does this, which you indicate you are doing.)
2) If you do a run/build step, don't have the project open in Xcode at the same time. This may simply be my paranoia, but beyond a simple "cordova prepare", I close the project in Xcode, execute the command, and reopen the project (this is typical if I'm adding a plugin, say).
3) Clean the project from Xcode. I've not had to do this in a very long time, but it may help in your situation.
4) Worst case: delete the app from the device and rerun. You shouldn't have to do this, but when all else fails...!