That's a great question, and I think I may be getting closer to an answer. Through my work on files this last season or so, I'm beginning to think having a file with no name corruption and auto fixing of name corruption is key. With the new file I'm almost ready to post, there was no name corruption along the process, from me importing the teams into a stable roster file (the last one release by 2K itself), into renaming players. Something weird did happen where the Ravens players were on the Ravens AND the Rams, so I had to carefully copy and paste the Rams players attributes and carefully edit names in small increments. My current file works in Franchise Mode, even when selecting to user control a single team (I tried the 49ers), and I was able to sim all the way through the playoffs and through off season activities with no problem. One thing I've noticed, however, is that the simulating of games, etc. in the second season tends to take a LOT longer than the first season. Not sure why, but it does.
I'm also noticing a possible cause for the name corruption (which the editor can "fix," but then the ability to use the roster in franchise can be compromised). When you manually edit a players' name, and you cannot link to another player with that name already because the name is unique (e.g. Cordarrelle) is helpful to change the name slot for a player with a similar number of characters in their name. So in the earlier file, I was might have been taking the unused name slot "Sam" and use it for "Cordarrelle," which has many more characters. And if you do that enough, you can run into problems. I've now just gotten into the habit of saving, closing the file, and reopening it every time after I edit in that way, and I haven't run into any name corruption.
So, all in all, I'm thinking it comes down to avoiding name corruption, and some files you find on the internet, as wonderful as they are, have had that happen along the way. And they can still be great for single games, but they may have problems in Franchise.
At least that's where I am in my thinking on this at this point.