It's not always iOS, often it's specific to the apps. Facebook is easy -- just delete the app and reinstall it. The login settings are saved in iOS, so there's no harm in deleting the app. If any app doesn't have settings or data that you need to keep, then that's the simplest solution. Sometimes though, an app does strange things -- like one of my games sometimes requires redownloading levels and the old ones don't get purged. Since I need to save my game progress, the only way to fix that is to restore from the backup.
The issues specific to iOS occur most often if an download (such as a media or app file) hangs. The garbage data will stay in the "Other" directory, and there's no way to get rid of it unless you restore the device as new. I use iTunes Match and will sometimes download entire playlists for road trips. If the download hangs, then the entire size of that playlist gets used even if there are no actual files to play.
Because I use iTunes Match all the time (and the "Other" directory grows steadily), I just restore my iPhone as new, and then restore from a local backup about once every other month as a normal maintenance routine.