The crash report of course confirms that it is crashing during the time that WoW is processing its InteractUnit Lua function. The only other thing that I can say about it is to more forcefully say, this definitely appears to be a bug in WoW.

The following will mean absolutely nothing to you, but here's the crash.
Code:
.text:00977614                 mov     eax, [esi+0BCh]
.text:0097761A                 mov     ecx, [eax+20h]  ; crashing here because eax is 0
.text:0097761D                 mov     edx, [ecx]
.text:0097761F                 mov     eax, [edx+30h]
.text:00977622                 call    eax
I don't hack the WoW client these days so it also means next to nothing to me. But, a WoW client developer could use his debugger and see the line of code that corresponds to, and see something like ... this->memberA->memberB->SomeMethod(), and the problem in your case is that memberA does not hold an object. His job would then be to prevent this crash from occurring when the object does not exist. I don't know what conditions make the object not exist (or, therefore, what you should be doing differently).

That's about as far as I can help on this, you should provide them your crash log and feel free to paste that or point them at my analysis.