You've got a problem in the design, and I would stay away from randomly changing settings and seeing if it works. Very seldom does that help, and worst case, it works today but you don't know why, and the problem crops up again. I would first cover the things you absolutely should be doing - functional simulation, static timing analysis(core and I/O should be constrained) and going through all the messages. You could also run the Design Assistant.
At that point, it's worth the time to roll-up your sleeves and do some low-level debug. SignalTap is almost a must, or possibly SignalProbe/LogicAnalyzer Interface. You need to get in and see what's failure, and once you diagnose it, can you determine the best way to fix it. I can't tell how many times I've seen designers waste more time over the long run by trying to go for a quick fix.
Finally, the most common culprit is something timing related, either an unconstrained path or an incorrectly constrained path. But if you feel you've already constrained the design, then basic debug is the way to go.