Hi, I'd like to help you with your question.
It does sound like your sister in law might have narcissistic personality disorder. Although it is rare in women, it appears that narcissistic personality disorder may be becoming more common due to the change in parenting styles of the last couple of decades.
Although no one knows what causes narcissism yet, there are some theories. One is that as a child a person with narcissism was exposed to very permissive parenting. That is, they were denied very little and told they were never wrong. This teaches a child to think of themselves first. Another possible cause is neglect and abuse. Abused children learn to cut off their feelings and take care of themselves first.
Whatever the cause, dealing with your sister in law is not going to be easy. Some of the things you have tried so far are very good options. Talking with your husband about the situation is good. I am assuming that your sister in law is your husband's sister? In that case, he can provide a buffer for you. He should do most of the contact with her and when she attacks you, he can intervene. The both of you should also present a united front so she has little reason to attack either of you with lies about the other.
Develop a few phases you can say to her every time she acts out. If she approaches you and says something mean, you can respond with "Thanks for the input" and walk away. Say it the same way each and every time she says anything to you. Try to maintain a neutral tone and give no indication of emotion. Anytime you show emotion she is going to use it against you. If she starts to tell you something you do not want to hear, interrupt her and say "thanks for the input". Then walk away.
Walking away at any time is also good. It may escalate her because she desperately needs attention to have the greatest impact, but the more neutral and/or bored you can be around her, the better. Let your husband know to respond the same way.
The both of you should also keep your distance as much as possible. The more people nearby the more people and energy she has to use for her purposes. Once you come away from a contact with her, do something fun or relaxing to destress yourselves. Dealing with someone with a personality disorder can be very draining. You need to find a way to recharge.
Do your best to let what she says slide off. She is damaged in some way and until she agrees to get treatment, she is stuck in this mode. If someone can convince her to get help, she should contact her doctor for a referral to a therapist. Therapy can take a while because of how long it takes to treat the complexity of a personality disorder, but it is treatable.
I hope this has helped you,Kate