For me, I think the key has always been the following principles:
When the players ask for something reasonable, give it to them (whether that's someone asking if they can do a particular Maneuver, or an arms dealer asking if they can get an SMG). Not necessarily without strings attached, mind you, but give it to them nonetheless. If that screws up your current plot, adapt the plot. This inludes them pursuing lines of investigation you didn't expect (which should be seen as a request for information).
When the players ask for something unreasonable, laugh, and tell them no. Stick to it.
When you are in doubt about whether something asked for is reasonable, think about it for a moment, but err on the side of reasonable but with a whole lot of strings attached.
Try to have logical reasons for everything that occurs. That way when players complain it's not fair, you can explain why it happened, and they'll likely be less upset.
Remember that the villains make plans, and should be reasonably competent at carrying them out and be prepared for a certain degree of opposition, but that they aren't omniscient. In other words, when the PCs do something predictable, the villains should likely have plans in place to deal with it, but when they do something surprising, let the villains be surprised.
And finally one specifically for FATE: Whenever a PC gets screwed over by circumstance, they should get a Fate Point. This is a large part of what Compels are for, and it makes the PCs feel a lot less bad about being screwed over for the sake of the plot.