I sympathize with this. And I, as a biker, don't really like being passed repeatedly either. But there are few good options: stopping
in the bike lane but behind you defeats the purpose of the separate lane; I can join the car lane, and sometimes do if the flow is indeed slow enough, but then I risk being in the way if things do start moving faster, and/or pissing off a different driver who wonders why I'm not in my own lane, even though the average speed ends up being the same.
I'd suggest that the driver that is repeatedly getting ahead and then finding herself waiting at a stoplight might try driving slower between the lights, but that depends on the road conditions, and whether the lights are actually correctly timed. And on short blocks it risks causing jams. There's not really any way to apportion blame: it's a situation where it's hard for any of us to win. Maybe we just have to try to relax and get along as best we can.