I cut back. I distracted her from nursing in the AM with breakfast, for example. I cut out the nursings before bedtime and then made bedtime shorter and shorter. It didn't take six months but it did probably take two...hard to remember. I'd have to look at her book. If you got her down from constant demands, I think you would feel better about the process. If she refuses to eat breakfast and you are not providing a nursing session, you can say, "No feed you now. You eat breakfast or you wait til snack time". She's 2, and she'll be OK. Sometimes she was simply wanting a hug and sometimes she was thirsty and if I offered strawberry milk instead, she was just as happy. I had to figure out what it was.
Also, reinforce manners. "You can't pull my shirt in the store. We do not nurse in public anymore." Or "You need to ask nicely." or whatever works for you. Since nursing is not her only means of nutrition, it's not as important that she nurse immediately upon asking and she might forget.
The flip side is she sees nursing as time with you and attention from you. So start to trade. Rather than nurse her, maybe hold her in your lap and read a book, or sit and share breakfast together. "Do you want some of Mommy's scrambled eggs?" My DD always wanted what I had. For nap time, it turned into rocking for a few minutes and a book and being laid down in her bed and she did OK. Night was the hardest, but she understood "little bit" til we were done. My DD was 2.5 when we stopped and I totally understand the bittersweet place you are at. Hang in there, Momma.
Also, if she gets up at night for a snack, give her a post-dinner snack. Once we did that (very small, healthy), DD no longer woke up in the middle of the night. That was a first step toward her being weaned within the year following. DD does not always ask for her "bednight" snack anymore, but when she does, it's usually a sign that a growth spurt is coming.