Even though it isn't really milk (in the dairy sense), coconut milk still naturally separates into a thick cream and thinner liquid like regular milk. As such, when working with coconut milk you should still follow the same procedures you would to make a milk-based cream sauce.
The number one rule when making any creamy sauce is: DON'T LET IT BOIL! Boiling will guarantee that your creamy sauce (including sauces made with coconut milk) will break in some form or fashion. At most, you should cook these at a bare simmer.
Other than that, there are some techniques you can use to keep your curry smooth.
You could use an emulsifier like honey (common in vinaigrettes, where it is used to make sure the oil and vinegar don't separate), added toward the end of cooking.
You could also use a thickening agent, like a cornstarch slurry or a quick roux. Curry paste is also a thickening agent. As a general rule of thumb, when making Thai-style curry I usually cook my vegetables in a little more oil than I think they need, then add the curry paste and sauté that until it has absorbed the oil (along with any dry spices). It will act as a roux for the coconut milk and make sure there are no lumps in the final curry.
Lastly, cooking the curry uncovered at a simmer, stirring occasionally, will thicken it up nicely and help all the ingredients stay together.
Half and half or heavy cream is a pretty good substitute. It has similar fat/water suspension, reduces and thickens similarly, and emulsifies similarly. You lose the coconut flavor, but it cooks similarly and you keep the texture.
You cannot substitute coconut cream, because it is too rich, which changes the texture of the sauce greatly, and doesn't do as good a job of getting flavors out of spices.
Incidentally, I highly suggest you pick up a box of instant coconut milk powder. It's not as good as the canned stuff (needs whisking), but because it's nonperishable you don't have to use the whole container at a time. This helps avoid the "oh crap, used the last can!" moments you get with canned coconut milk.
Best Answer
Thai curry recipes often use a lot, and the flavour is distinctive. You'll need to experiment. Your idea of cashews is a good place to start. What I've often used in Indian curries is ground almonds (almond flour would be better but I can't get it easily). They have some thickening power and quite a suitable taste. You could also try cooking with nut milk - I've only done this a couple of times because it's not something I normally have, but recently used some almond milk in a sauce with lentils etc. It ended up with a fairly creamy texture. This was a brand marketed for cooking and a little thicker than I've come across before
As an aside, I hope you've had medical confirmation of the allergy - it's not exactly unknown for these things to be deceptive.