I don't think this is unusual at all. When transiting in SIN, you're not subject to immigration control but you - of course - are on Singapore soil and subject to Singapore law. I'd be very surprised if you can find an airport around the world which doesn't consider you to be in its country when in transit and subject to its laws.
FWIW, that is the case at all airports worldwide. If you're transiting through LHR you are on British soil and subject to British law. Frankfurt - German soil, German law. CDG - French soil, French law. That you haven't actually entered the country in question is a side matter.
If passengers in airports were not subject to the laws of the countries the airports are located in, whose laws would they be subject to? If local laws did not apply to airports and I beat the living daylights out of somebody while transiting at MAD, whose jurisdiction would I fall under? Applying local laws at airports makes perfect sense, because otherwise you would create a legal vacuum, a no-man's land without rules. And that's not in anyone's interest.
Granted, Singaporean law is a bit more draconian than other penal codes around the world, but hey, if you're that bothered by it, transfer somewhere else.