Which brings an interesting, albeit probably purely theoretical, question.
The text of some FOSS license explicitly mention that the license is perpetual, e.g. Apache. Deal done.
Some other, like BSD, does not mention perpetuity.
As the copyright holder, I think I could revoke it (generally, or just to you because I don't like your t-shirt).
Would it be possible, and if yes, has something similar happened?
Strictly speaking, that question which can only be settled in a court.
Licenses are "contract-law" and what a contract means depends on the country you are in, or even the judge or jury you are in front, because that is entirely a matter of interpretation. With that said, the most pervasive paradigm is to ask what "a reasonable person would expect".
If the BSD license came in two variants, one saying "for ever" and one not, a reasonable person would not expect the variant without those words to be eternal.
Without such a "legal hook", the court will look at the "overall structure and intent" and almost certainly find that the license amounts to "Have at it, dont claim you wrote this, and dont bother me." and conclude there is no sign of intent to limit the duration of the license.
Having granted such a license, if you tried to pull it back, for reasons unrelated to the text of the license, for instance an ugly T-Shirt, you will run into tons of contract-law, about proper notice, about breach of contract etc. etc. and you will almost guaranteed loose on a legal theory of "you signed it then, you cant change it now." (I cant remember the fancy latin name for that.)
The reason why US corporate lawyers (slightly) prefer the BSD to the Apache or MIT license, is that the BSD license
has been in court.
In what was probably one of the most suicidal legal maneuvres ever, USL, UNIX System Laboratory, sued University of California, Berkeley - which happens to have one of the better law-schools in USA, without doing their homework.
UCB sued back, pointing out that USL had lifted a lot of BSD licensed material and not complies with the terms of the license.
Novell, who had bought USL in the meantime, folded and agreed to a very one-sided settlement, because if they lost, they would have to reprint, or otherwise update, every single UNIX manual then in existence to acknowledge the BSD license applied.
But lawyers still see this as very strong evidence that the BSD license will "hold up in court", even though the court did not actually decide the case.
See:
https://en.wikipedia.org/wiki/UNIX_System_Laboratories,_Inc._v._Berkeley_Software_Design,_Inc.