UDP is driving yourself. you have to adjust the speed and direction as you go. if you go to fast accidents can happen.
so obviously, when using UDP you have to add safeguards against attacks, but, you get more flexibility to adjust things along the way. you are not locked into the way TCP does it, and that is the benefit of creating a UDP based protocol instead of just using TCP.
TCP is not built on top of UDP, but i think it could be: https://stackoverflow.com/questions/10680592/can-tcp-be-impl...
and it is a good idea to not just use UDP blindly, but implement the necessary saveguards on top of it.
but claiming that all UDP based protocols are bad because of UDP is like saying, cars are bad because of bad drivers. (well, they are, but that's a different topic)
so UDP based protocols aren't bad. only using UDP without safeguards is bad.