I guess it's a bit like adding the state when naming an American town, "Boston, MA" or whatever, because ets you distinguish between towns that may have the same or similar names. Most towns with an "upon" in them have pretty mundane roots- Berwick ("barley farm"), Kingston, Newcastle, etc.- and seem to share their names with at least one other town in England. Speculating baselessly, it seems to attach itself most often to towns of regional but not national prominence, so perhaps people found themselves referring to it often enough that the interfix became routine, but not so often that it was simply assumed you where talking about the whatever-town?
Scotland and Ireland don't seem to bother with this, perhaps because our place names are all creatively-mangled Gaelic, so there's enough variety built-in.