Different approach, after the Comment on my other answer:
Maybe that's just how immortal (or very, very long-lived people) always fight - it's how it's always been. Dwarves have fought each other like that because, well - for a human with a finite time to live, dying for a cause to make the (short) life of their children better may seem like an OK deal. If you, and your children, can live forever? Dying for something is a bad deal unless you would die without that thing anyway. A couple bruises and a broken leg though, that's ok. Ditto for the Elves - and when Dwarves and Elves met? They didn't know any other way to fight, so they fought each other the same way.
And obviously, if taking someone's life is just not done, the shocked reaction when it does happen would be expected. Nobody's TRYING to kill the other guy, just punch them around to make them see reason (or hand over the thingy we're fighting over)
Now, why are they fighting, and why do they HAVE to fight? Of course it could be ressourcesresources, but I think a better explanation might be:
The Dwarves are fighting the Elves because they, with their skyships and all the flying around, are endangering all of ExistanceExistence. Birds belong in the sky, they have wings - Elves and Dwarves should stay on the ground. THAT is what causes the Everboom. If not for those pointy-eared flighty buggers, the surface would be a nice place to live!
The Elves on the other hand, are fighting the Dwarves because they, with their digging everywhere are hurting the land. The earth itself cries out in pain, as evidenced by the everboom - which is obviously caused by this atrocious behaviour of the dwarves. If not for those tunnelling cretins, the Elves could land on the earth without fearing the everboom.
Who of them is right? Are they both wrong? Do their rulers actually believe that, or just pretend to so they can motivate people to go to war? That's up to you to decide :)