Indeed both the English "to give", and "gift" share a common etymology with the German "das Gift" und "geben":
ahd. (9. Jh.), mhd. mnd. gift f. das Geben, Gabe, Geschenk, Gift, mnl. ghifte, ghichte, nl. gift f. Gabe, Gift, aengl. gift, gyft f. n. Gabe, Belohnung, Brautpreis DWDS
It was also used for substances given to people for medical reasons, hence propably the shift in meaning.
Today the original meaning still can be found in "die Mitgift", whereas "das Gift" exclusively is used in the meaning of poison.
Note that there also is a shift in gender, where "die Gift" (engl. gift) was female, whereas "das Gift" (engl. poison) is neuter.
From the original meaning of someting which was given, the compound noun "Giftgeber" would be from two words with the same meaning. This makes me believe that it may have been used only rarely. It is not used in contemporary German.