Many find usage of the Control key unintuitive. Why not have a standard widget that displays check-boxes on the left side of the multi-list? Keep Control as a secondary way to toggle, that's fine.
Again, the standard, very simple control in html works analogously to the standard Delphi or corresponding control. The non-standard checkbox + multi-select widget you envision would be, IMHO, simpler to implement in js+html than in Delphi--but would be a custom widget in any implementation, as it's not a standard UI control.
I guess I'm not understanding your point. I don't have a formal study about the (un)popularity of the Control key multi-select convention; it's merely my anecdotal observations. You are welcome to fund a formal study. (It's possible Delphi does it "wrong" also.)
My point is that the reason for web app development becoming cumbersome and time consuming is often unnecessary over-complication of simple, standard widgets using over-engineered and non-standard compliant JS "plugins", instead of built-in, standard elements. My point is also comparing apples to apples; when sticking to standard controls, web technologies are often simpler and quicker to implement than older frameworks, especially when taking into account the whole application lifecycle, including authentication, authorization, caching, and deployment of new updates.
To paraphrase:
The thing is, web technologies don't need frameworks; it is a framework.
Use standard widgets and controls, style and enhance them if needed, stay away from kludgy plugins, and you'll be fine. Input validation, standard keyboard, mouse, touch navigation, etc built in, for free.
I agree with native & YAGNI to a point. Multi-select that uses just the control key is confusing and clunky to users (in my experience). It just "sucks" too much. I'd prefer to see something like check-boxes on the left so one can select/un-select using the mouse. We'll just have to agree to disagree on this one.