I disagree that Buffy has always been selfish with Spike...he was evil in Seasons 5 and 6. They have each other's backs for the most part in Season 5, but Buffy doesn't really owe him anything, contrary to what the phrase "being selfish" suggests. Then in Season 6, Buffy's clinically depressed and has a whole slew of problems with just about everybody and everything, and Spike's certainly no saint either. It's a mutually abusive relationship in Season 6. I think that was kind of the point; the idea of two people simultaneously hurting and needing each other.
In Season 7, IMO, it was pretty clear that Buffy went out of her way a LOT to help Spike. Out of love, forgiveness, etc., you can interpret what you like. But out of duty? Helping him as a burden? I really don't see that. She risks her life a lot for him and chooses him as her Champion at the end of it all.
I think Spike is helping Buffy because he wants to. He's not really looking for anything from her. I think above all he'll always love her, but he helps her right now because he knows she needs it. And while that's very, very admirable, IMO, it's not a failure on Buffy's part necessarily. She never actually asks him for his help, and she certainly doesn't expect it. I interpreted a lot of self-blame and hurt in this last arc...I don't think she believes she even deserves Spike's help.
I think Spike can take care of himself. I think he knows what he's getting into, seeing Buffy again after (presumably) years. I agree he's come a long way since 'Chosen' and 'Not Fade Away', and that's awesome. I'm a huge Spike fan, and I'm glad to see he hasn't regressed or become stagnant. But I see a relationship in Season 9 as a good thing, not a bad thing. Whether or not it's platonic or romantic, I think Spike has come far enough where he can be around Buffy without losing sight of the mission. Or The Light, like you said.
I'm more thinking about it from Spike's POV, and it may not be coming out correctly. Yes Spike was evil, but he was never the typical evil vamp either.
For instance, Buffy NEVER had Spike uninvited from her house until he told her he loved her. When he was evil and chipless and wanting to kill her, he had free reign, but he says I love you and now he's not allowed?
I look back at Season 4 and it makes me a bit disappointed in the Scooby gang because none of them really think that capturing and experimenting on demons is a bad thing and constantly make fun of Spike for being harmless now. I mean really, these are the good guys and they think the torture of demons is acceptable? Giles was a bit concerned but also didn't push it as much as I felt he really could have with Buffy on the moral aspects of the Initiative. Of course Spike is going to continue to hate these people and not really want to help them, they disgust him with their self-righteousness. You want to kill demons because they are doing wrong, fine, then kill them. Don't capture them and experiment on them and don't join their organization and help them do it. On top of all that Buffy is constantly hitting out at Spike because she knows he can't hit back. She comes off as a bully quite often. Buffy only thinks the Initiative is bad once they try to kill her and Adam comes to light, prior to that it was all "lalalala, capturing demons is helping me out".
Season 5 the only really evil thing he did was want the chip removed, and can you blame him? He can't protect himself from humans and he is a vampire. Buffy gets mad and takes it out on him because Riley is going to vamp ho's when it wasn't his fault. She gets mad at him about Dawn finding out she's the Key and again it wasn't his fault. She gets on her high horse regarding the 2 slayers he killed when she asked to know and just didn't like the answers. It wasn't like he killed them in their sleep, it was a fair fight between enemies. It's ok for Buffy to kill demons in a fair fight but not for Spike to kill Slayers in a fair fight?
Most of S4 & 5 Spike helps them out under duress and for money, but it isn't like he could just go out and get a job and none of them have really giving him any reason to want to help them either.
Season 6 was a mess but he was trying to help her at first by just being her friend. He had been helping the Scoobies for months on patrol, taking care of Dawn, and being there for whatever they needed. The second they bring her back they all start treating him like crap again. He can't even visit with Dawn because Buffy wants him as her dirty little secret so Dawn feels abandoned by him when there wasn't much he could do about it. Yes Spike wanted her but the beginning of their sexual relationship was her starting it and going hot-cold on him constantly. At first he just wanted to talk about what she was doing and per Buffy's usual tactics, she refused and just lashed out by hitting again and the downward spiral begun.
S7, once he was out of the school he had asked Buffy to let him go either by staking or letting him leave Sunnydale for everyone's own good and she wouldn't. He asked multiple times and all she said was she wasn't ready for him to be gone yet. She kept telling everyone over and over how Spike was their strongest fighter after her and they needed him there and that was why she was fighting so much to help him. He helps her quite a bit as well and how is he thanked, watching her suck face with Angel after she had just spent the night curled up in his arms. Sure she sends Angel away, he needs to live when she knows people are going to die and she doesn't want to risk him. She has no problem risking Spike as that is all he's good for isn't it? Back up muscle and to help bring up her spirits when she's down. When looking at it from Spike's POV how could he ever think he was worth anything to her or any of the Scoobies except as extra muscle? They threw him aside when she came back and she threw him aside in the hellmouth.
So now here he is again trying to help her out of a downed state without anyone even knowing he's there again. Once they do will they start with their comments again, will he be treated with even a smidgen of respect?
This is why I'm undecided on if I want him around any of them anymore, they don't treat him all that great and I can just see him getting sucked back into "it's all about Buffy" and let himself get carried away again. It really doesn't matter if Buffy loves him or not, in the end she'll always chose Angel and Spike will inevitably get hurt. That is what I don't want. I want to see Spike out fighting the good fight with people that like him and he likes as well with mutual respect being shown. I just don't see him getting that by being involved in any way with Angel or Buffy.