Currently, the is_in tag seems to be the only way. Until…

somebody who can get actual town boundary from MPJ/MPSJ. These are usually shape files already owned and in use in the local government’s office. These shape files’ coordinates usually have to be transformed to WGS84 for import into OSM. And of course, probably need explicit authorization for use in OSM, just in case. (unlike the other boundary project currently being imported, where the boundaries were just from paper maps tracing :P)

If you can jolok the State’s relevant ministry, the better. Then we can get all kind of boundaries for Selangor. There might be a slim chance, seeing that Selangor is a bit more open in this kind of open data stuff.