basically, UDP does not sequence packets (as you say), but that does not mean that packets can NOT be sequenced. It simply means that UDP (a Transport Layer/Layer 4 protocol) does not do the job. If sequencing is important, and if UDP is chosen as the L4 protocol, then it is up to higher levels (i.e., the "application") to do the job of managing sequencing.
TCP, on the other hand, uses sequence numbers in the TCP header to manage sequencing. In this case, the "application" does not need to bother with doing any packet sequence management. It simply hands the data off to TCP knowing that it will be managed there.
When somebody is writing a network application, they have to (among many other things) determine the balance between havinga fast L4 protocol with the application managing aspects of data integrity (e.g., UDP) vs. a more robust, but slightly slower (due to more overhead) L4 protocol, and less issues in the application (e.g., TCP).