Just to make sure I have it right how it works: The Poison card effectively nullifies any "X Eats Y" Goal in which you own the Y card (example: BEARS EAT FISH is nullified if you have Poison and Fish in front of you). Is this right?
That's basically it, although the word "nullifies" might be a bit misleading. It's more like you're ignored if someone has X and is trying to see if there is a Y on the table.
A couple of goals have more than one Y. If the Goal is "Insects Eat Leaves or Mushrooms" and I have Leaves and Poison, the person with Insects can still win if Mushrooms is on the table in front of someone other than me.
The Goal stays in play, so someone with the X on the current "X Eats Y" Goal could, for example, play Trash Something to discard your Poison and win with your Y.