The real problem, obviously, is that the OS itself does not know if it is tethered to a data-capped mobile connection or an unlimited fixed line. If operating systems (both on mobile and desktop computers) were built to handle the first case, the user would have an option to stop any background activity or app updates. Like a “data-capped mode” for the entire OS.
I frequently use my mobile (with limited data) to give Internet access to friends who come from abroad and therefore have no data roaming enabled. Of course, once these mobiles see they're on WiFi, they assume they can download app updates. With LTE, it's easy enough to burn through a lot of data in no time.