Whenever you see a sauce separate, it's because you have an Emulsion, which is two or more immiscible liquids. In cooking, these liquids are typically water and fat.
To stabilize an emulsion, you use an emulsifier. The most common food emulsifier is lecithin, and the most common natural source of lecithin is egg yolk. If you don't want the taste of egg or your food is not going to be cooked (i.e. a vinaigrette), then it you can actually go out and buy pure lecithin (soy lecithin is common to find).
As the wikipedia entry mentions, there are other natural emulsifiers such as honey and mustard, and often when you see recipes calling for mustard when it seems to be a strange ingredient to add (such as cheese sauce), the reason is to help stabilize the emulsion.
Additionally, the most common emulsifier used in packaged or processed foods is sodium stearoyl lactylate. It sounds scarier than it is; you can buy it in the store just like lecithin.