Different Android phones are different. Nothing strange about it at all. Some have great performance, and some are truly awful. It is a big problem for software developers, and makes us appreciate the consistency of iOS devices…
Frankly, you have to accept that your apps will simply fail on many Android devices. There are too many differences to possibly cover them all.
Well, it's unlikely to be related directly to the OS, but more likely the browser. And unless you are writing a native app (PhoneGap, etc.) you won't have direct access to the OS version. You will have to sniff it out from the User-Agent header, and the user might be running the default browser, Chrome (newer devices default), or some third-party browser… I think with some Google searches you can figure out a strategy.
If this really is related specifically to a browser version (or versions), then you can mitigate it by using some other widget, say checkbox (native or not), or radio buttons when you detect those versions.