I'm in the 'he's the greatest character evs' camp, so.
He felt killing Karen was necessary because there was a Yeerk, at the time deemed untrustworthy, who knew their secret. They couldn't just tie her up in the woods and starve her because there was a search party actively looking for Aftran who could very likely have found her as soon as they put her anywhere. Was it a heartless decision? Of course it was, but it was one that made a lot of tactical sense. It's not like he wanted to kill her because he enjoyed killing.
As for V1, at what point did he have a chance to starve V1 out? He even addresses this in #15: you can't just take Visser One's host body and starve V1 to death. It would have blown the Animorphs' cover, it would have driven everyone into hiding, and they would have been hunted to the ends of the Earth. I mean, this is like wondering why they didn't starve the Yeerk out of Tom's head. The only reason they could starve Temrash out of Jake was because no one knew Temrash was there.
I think you're missing a huge part of the psychology behind Marco's attempt on V1's life. It was a desperate, and yes selfish, gamble to try and reach a better solution than living in uncertainty. He knew he couldn't save his mother. There was no option that left her alive and free.
A section from #30: "Mom, what was I supposed to do? I saw all the plays. I saw all the pieces on the chessboard. There was no solution that freed you. There were only solutions that destroyed you. I had to. How else?"
So that came down to two things - kill her and V1, or let her live to stay a slave, and never know if she was alive or dead, or if wishing for her return would ever yield anything. At this point, he's certain his mom's an involuntary Controller. He knows from Jake's little stint as a Controller, plus basic sense, that being a Controller is hell. It's a reasonable conclusion for him to reach that his mother would rather be dead than a Controller, one that's confirmed by Eva's commentary in Visser.
But more than that, Marco's desperate because he's unable to move past his mother's enslavement. When she was dead, it was horrible and he mourned her and life went on. The position he's in from #5 to #45 is knowing that she's still out there, that she may or may not be dead, that he may or may not meet her again, that she may or may not be living a life of torture, that he may or may not have a reason to hope he'll ever see her free again. This is torture for him, because there's no closure at all. If she's dead, there's a conclusion and he can grieve and know she's never coming back. If she's alive, there's still that hope.
Section from #30:
Rachel: "No. Because [knowing she might be alive] won't make you feel better. It wouldn't be pity or charity. I wouldn't be doing you a favor. You've cried and yelled and hated yourself. It's bad, but if she's dead at least it would be over. If she's alive . . ."
Section from #15:
"If she was gone...really, really gone, then I could be a normal person again. I could be sad and then put it behind me. I could be free. If she was still alive, still trapped, then I was still trapped too. I still had to try and save her. I would still be a prisoner of hope."
So basically, by #30 Marco's reached the conclusion that saving her isn't an option, and it's a reasonable conclusion based on the information he has at the time (seriously, there was SO much lucky coincidence/Yeerk idiocy leading to her rescue in #45). There was no way to starve V1 without getting all the Anis screwed for good. His gambit in #30 was a desperate attempt to find closure and put an end to the whole thing, rather than letting it drag out knowing his mother would probably end up dead anyway after a hellish life of slavery. He's pretty much in meltdown mode because he can no longer handle the stress of her being V1 and is trying to go with what looks like the best option, horrible as it is.
Sorry for the tl;dr but I have SO MANY FEELINGZ about #30.