I have looked at various sources, both verbs have the general meaning of "to add to something" but they do not seem to be used in the same context. "dazugeben" seems to be used mainly in cooking receipts, but it is also used in a much more general meaning in some documents from the European Parliament... So, is there a general rule to restrict the meaning of "dazugeben" to a certain context ? Or should I always prefer to use "hinzufügen" to be on the safe side of the translation ?
In my humble opinion, this is a question of the speaker's origin.
"Dazugeben" is commonly used for all acts of "adding sth. to sth." in Austria.
For other German speaking areas, the use of "dazugeben" is limited to recipes and one idiomatic use in: "Seinen Senf dazugeben" a slightly rude way of "adding ones 2 cts".
To avoid an Austrian slant to the translation, "hinzufügen" would be the neutral sounding choice.
This isn't a complete answer, more tips on how you can research this kind of thing on your own. One thing to try is to compare the results from dict.cc. While dazugeben has two entries "to add" and "to contribute (financially)", hinzufügen has a few more, including "append" and "add on". I think the "contribute financially" meaning is the source of the EP hits you're getting. From the "append" and "add on" meanings, I get the impression that hinzufügen is used more when the thing being added will still retain its original form in some way, rather than getting mixed in with everything else. Linguee can be used similarly.
Another thing you can do compare the words in the DWDS usage database. First read the definitions under the main entries; run them through Google translate if necessary. Since German dictionaries are obliged to explain the meaning rather than just give a synonym in English, they usually have more detail than what you might find in a German-English dictionary. You should also check the frequency (Worthäufigkeit) ratings; hinzufügen has a rating of 4 and dazugeben has a rating of 3. This is a logarithmic scale so a difference of 1 means that one is used about 10 times as much as the other. So it appears that hinzufügen should be used when in doubt. Finally, compare the word profiles; scroll down and click on the DWDS-Wortprofil link to get the basic profile, then add the second word to the red Vergleichswort box to get a side-by-side comparison of the two words. It take a bit of practice to interpret the results, but the profile lists the correlation (given as logDice) between the given word(s) and other words that occur in the same sentence. The scale is logarithmic, but I think of it as 0=no correlation, 5=strongly connected in context, 10+=probably an idiom of some kind. For the profile of the two words in question, you can see by the food words related to dazugeben, that it is indeed used frequently in recipes. Click on a specific word to see example sentences where the the words are used together. It's a wonderful tool; my only criticism is that most of the source-text corpus is from newspapers, so there is a a tendency toward "journalese" rather than conversational German.
Finally, you should also consider the derivations of the words. This can be problematic since the meanings of words drift and the meaning of a word now can be very different from what it was when it was first coined, but often breaking the word down into its component roots and affixes can give you a clue about the connotations it might have.
A very good German-English dictionary should be able to answer such questions by listing connotation, common contexts and usage examples for each meaning of a word. Unfortunately there don't seem to be any dictionaries that good, though I have high hopes for Wiktionary in 5 to 10 years. In the meantime having a few techniques to discover this kind of information on your own is an essential skill when learning a language; there are probably thousands of such "synonymous but not quite interchangeable" pairs of words in a language, so it seems impractical to ask a native speaker every time you come across them. On the other hand, this kind of research can't really replace the "feel" of a word that a native speaker will have developed.