Well, if other people simply included your module in their Web sites inside an IFRAME, you could host the module yourself, on your server, and update it to your heart's content.
For example, you would host module.php and tell your clients that it will fit in an IFRAME that is 200px wide by 300px tall. Then, on their end, they just call the IFRAME to include it:
You could even have them pass varaibles via the IFRAME URL, and skin / adjust it based on GET:
Of course, the problem is that all the service burden is on your end.
Another option is to provide information in the module that you might need to change as a Web service. A Web service is basically just an XML file you feed over the Web, for other people to use. Using your states example, you'd simply bind the drop-down box to data you get from the XML file.
Again, that places a service burden on your end. And you would probably want to limit who can call the data via a referrer block or the like.
You could even provide XML as the data source for various controls you might need to update, and simply send out new XML to your users as they need it;; all they'd have to do is FTP it to their directories.