"Anam Cara" is in fact a phrase invented by John O'Donohue for his book of the same name. Showing no appreciation of the grammar or style of the Irish or Gaelic language, this phrase is a classic example of what Irish teachers deplore as bearlachas. If John O'Donohue had used this phrase in Irish class at his school, the response would no doubt have been a quick rap on the knuckles. As he instead used it as the title of best-selling book, he can, I suppose, claim poetic license.
The primary problem with the term is word order. "Anam Cara" is what you get if you make use of an English-Irish Dictionary to directly translate the term "soul mate" into Irish. Anam means soul, and cara means friend (mate). However, in Irish the adjective always follows the noun, rather than coming before, as in English. Thus, the only way to read the phrase Anam Cara in Irish is that the noun Anam is qualified by the word Cara, so at a stretch you could interpret this as "friendly soul".
Irish, however, does not allow for the conjunction of two nouns in this fashion. The phrase "friendly soul" should be written using the appropriate adjective for "friendly", which is cardúil. If the meaning O'Donohue wanted to translate was "soulmate", however, his only hope was to start with the noun "cara", followed by the form of "anam" appropriate to the genitive case (the much-beloved tUiseal Ginideach). In this way, his Irish phrase would have meant "Friend of the Soul", which is the closest he could have hoped to come.
Unfortunately, my Irish is rusty enough to prevent me from coming up with the appropriate form of "anam" in the genitive case, but I would hazard a guess that the phrase O'Donoghue was searching for was "Cara Anaim".
Now, if you'll excuse me, I'm off to have a frank exchange of views with the owners of Dublin superpub An Poitín Stil. Grrrrrr....