Capitalisation to this extent wasn't around in Old English, and I didn't remember any in Chaucer's Canterbury Tales, but it seemed exist in some Shakespeare folios and not others, so it certainly hasn't been around since the beginning of written English.
I found this in an actual printed book, The Cambridge Encyclopedia of the English Language (David Crystal), p67, where the internet let me down. It's in the section about emerging orthography in the 16th Century:
Hart recommended his readers to use a capital letter at the beginning of every sentence, proper name, and important common noun. By the 17th century, the practice had extended to titles (Sir, Lady), forms of address (Father, Mistris), and personified nouns (Nature). Emphasized words and phrases would also attract a capital. By the beginning of the 18th century, the influence of Continental books had caused this practice to be extended still further (e.g. to the names of the branches of knowledge), and it was not long before some writers began using a capital for any noun that they felt to be important. Books appeared in which all or most nouns were given an initial capital (as is done systematically in modern German) - perhaps for aesthetic reasons, or perhaps because printers were uncertain about which nouns to capitalize, and so capitalized them all.
The fashion was at its height in the later 17th century, and continued into the 18th. The manuscripts of Butler, Traherne, Swift, and Pope are full of initial capitals. However, the later 18th-century grammarians were not amused by this apparent lack of discipline in the written language. In their view, the proliferation of capitals was unnecessary, and causing the loss of a useful potential distinction. Their rules brought a dramatic reduction in the types of noun permitted to take a capital letter.
It seems odd that Hart's recommendations on capitalisation should have taken root where his suggestions for phonetic spelling have fallen on deaf ears...
I love your question. :-) (very unprofessional of me, I know.)
Acronyms are always capitalized, in order to alert the reader that the nonsense word they have just encountered is, indeed, an acronym.
I think the pertinent concept here is titles. Though common words appear in titles, the words in titles are capitalized.
When buildings are given a (common) title (as in your example, Student Union Building), they are capitalized on the building itself (often in the school's literature as well), because that is the building's title. You need not capitalized when you write about them using the common name. One would be surprised to see "student cafeteria" on a building, because that is the building's title, and as such, the words should begin with upper case letters.
Pertaining to example 2, your source may provide you a semblance of an answer in rules 9 and 10. "City Hall" is capitalized because it is a specific city hall, Vancouver's city hall. It is a title (Vancouver City Hall) for a specific building. Random or unspecified city halls or fire houses are not capitalized. Same with specific town halls (Trenton Town Hall), hospitals (Good Samaritan Hospital), etc. They are titles.
Pertaining to example 3, specific events, like books, have titles, and the first letter of the words in a title (with exceptions you are probably familiar with) are capitalized. So while people run marathons, they might not qualify to run in the Boston City Marathon; your dance is 'titled' "Winter Formal Dance". Wednesday Practice is also a specific, titled event, even if it occurs every week.
You might look at this page. It has a bit more detail on the use of capitals than your source.
Best Answer
There is no single rule for English title case. Most build on title-casing of individual words, so the rules for that first.
There are other rules in other languages, such as Dutch words beginning with ij capitalising both (e.g. ijsberg becoming IJsberg) and some languages mutate words by prepending letters which are never capitalised. Such foreign rules may or may not be followed with foreign words borrowed into English, though it's generally considered correct to do so, and can even affect meaning if you don't (nAthair in Irish means father while Nathair means snake).
With those rules for title-casing words in place, some common rules for whole titles are:
And there are yet others found. In addition, one might decide that a word that isn't title-cased is important to the title for some reason, and then title-case it. One might also capitalise after an initial Yes or No or if the title is an apostrophe starting with the word O, one might capitalise after that (so one could have "O For the Wings of a Dove").
One strong advantage of number 8 is that while it is often considered rather uncouth, it is easy to do programmatically. It's often found when some computer code is "fixing" titles from a source of mixed quality. Such computer code need only look for word boundaries, upper case the first letter and leave the rest as is. It gets a bit more complicated if your sources might have some all-capital phrases, but is still much simpler than having computer code determine if a word is a preposition, never mind whether it's being used in an adjectival or adverbal use or not.
So we can expect to see quite a few different variations coming from both human and electronic editors.