They don't randomly turn cursed. They were already cursed when you found them, but they were disguised as an uncursed item. The only way to tell whether they're cursed or not is to put them on someone and test it. Well, there's another way: collect 4 copies of the same uncursed item (or cursed item that has had its curse broken) and they'll turn infinite and won't drop anymore. Then, if you get an item that you've already got as infinite, you know it's actually the cursed version.
I would like a way to be able to test items without putting them on girls somehow though. The church can decurse most items that are on girls, but perhaps there could be an option to test an item first. Maybe cost a little bit more than to remove a curse as you're not risking a girl with it. But generally, any unidentified items that I'm wary of I'll put on one girl in the guild and if it's cursed, send her to the church right away (unless it's a curse I can easily remove). Why not skip that middle step and have a way to identify items without having to put them on a girl?
It would entail a cost-benefit evaluation as well: Is it worth it to spend favour to test if an item is cursed or not? And if it isn't cursed, that favour is still spent, and you'd still need to spend more to decurse it if it is cursed.
(also, I swear this is like the third time I've posted almost the exact same message explaining how cursed items work and how to avoid them...)