The well-known trolley car thought experiment proves conclusively that there cannot be any universal one-size-fits-all-situations concept of morality. We humans have evolved a very crude set of responses to particular behaviors that, on average, served our ancestors well in the context of small hunter-gatherer groups. But "on average" means there are plenty of exceptions and plenty of holes into which we regularly fall.
I've found the simplest way to think about the problem is to realize that "morality" is in fact an empty concept. Just as we used to think fire was an actual substance before we understood that it's really just the by-product of oxidation, so too we need to realize that "morality" is just a catch-all term for the evolved hardwired behaviors we have that on average reduce free-riding by other group members.
By reframing the issue it's easier to see the inherent limitations of the concept of "morality" and thus avoid dead-end reasoning.