Yes, the ports should always enumerate in the same order.
I don’t believe there is any attribute for udev to use that identifies the type of port.
Also, in case it’s useful, another persistent naming scheme is automatically available in /dev/serial/by-id.