Is it possible to cross reference to another org-mode file in a
different directory?
Yes, it is possible, you have to use the following syntax:
[[file:/path/to/other/org/file.org:* heading][My other org file]]
You can check the manual for the different link types and examples
Example - cooking 1 has an entry for Mayonnaise, so can file 2 have an
entry for mayonnaise but cross-referenced to cooking 1?
--8<---------------cut here---------------start------------->8---
id1=cooking1.org
** Mayonnaise
[[*Mayonnaise][Mayonnaise]]
blurb and blah
--8<---------------cut here---------------end--------------->8---
--8<---------------cut here---------------start------------->8---
id2=cooking2.org
** Mayonnaise 3
See also [[*id1:Mayonnaise][Mayonnaise]] and also [[*Mayonnaise 2][Mayonnaise 2]]
--8<---------------cut here---------------end--------------->8---
In your example, the references would be written:
See also [[file:cooking1.org:** Mayonnaise][this mayonnaise recipe]] and also [[*Mayonnaise 2][this other one]]