It’s not possible to use a syntax change at the calling location to change the returned value from the called function. The function either returns None or Self, based on how its code is written, regardless of how it is called.
At best, it’s subjective whether this is in any way an improvement over the explicit code you’d write now. I can’t imagine ever wanting to use the proposed syntax. In particular, you have no reference to the instance of A once a and b are called, which calls into question how (and why) the class A is defined in the first place.
Thanks for offering your suggestion. Changing the language is difficult, and only happens after a good deal of work. You need to provide real-world examples of things that are hard to do now, but will be easier to do if your idea is adopted. You need to consider the existing semantics of the language and whether your idea can be cleanly implemented.
Most ideas are not adopted, but the discussion can help shed light on how Python works, and the considerations in language design in general.