I think it’s perfectly coherent to say that everyone should aspire to be honest (but not blunt) or brave (but not foolhardy), as Aristotle does - and to believe that this objectively will lead to a better society - while at the same time recognising that some people suffer from compulsive lying, or have anxiety disorders, or whatever. There are people who can barely walk 5 metres without having to rest - does that mean no-one can have any moral obligation to do anything strenuous at all? If all persons includes people in a coma (to whom we have moral duties of care), the only universal moral stricture we can obtain is to lie very still at least some of the time. It seems that rather than your aim of defining morality as something all people can do, you’ve defined morality as only things that aren’t worth doing! You’re right that morality has to take account of the capacity of the agent, of course; but just as capacities vary, so do moral requirements. That doesn’t rule them out from being objective.
It seems to me like you’ve picked an unworkable definition of morality, or at least that I can’t follow the necessity of some of the strictures you’ve applied to what morality must be.
I think the ought/can causes some confusion in the argument: I ought to be at my job as a surgeon, but I can’t because I’m in the pub, falling-down drunk. Clearly this “can’t” doesn’t cancel out my moral obligation, because I could have been otherwise. The paralysed person can’t rescue the child, but that doesn’t mean she oughtn’t, just that circumstances prevent her from doing so. Ought and can are two completely different sorts of verbs, and language gets very tricksy when conditionals become involved.