Quite aside from implementation difficulty, restricting the change to just column aliases doesn't make it more palatable. You'd entirely lose the argument that the change increases spec compliance, because the spec is perfectly clear that a column alias is an identifier just like any other. And you'd still be paying a large part of the application breakage costs, because the identifiers coming back in query descriptors are one of the main ways applications would notice such a change.
True, applications will notice and map only the identifiers coming back in query descriptor and in cases when the application reading these resultsets is case-sensitive for descriptors then breakage cost will be there. Hence was all this discussion to reduce the application breakage cost in particular cases.