So with that I assume most these would have to be done by bus rather than train for time?
Yep, in most cases either rail connection is not possible at all (no rail line), or it is quite inconvenient.
Dubrovnik -> Mostar using (http://www.buscroatia.com/dubrovnik-mostar/)
Mostar -> Dubrovnik using (http://www.buscroatia.com/dubrovnik-mostar/)? Or is there another option?
Well, this byscroatia seems to be just website which has some schedules and redirects to reseller, it's not an actual bus company. So probably it doesn't worth it feed ticket resellers. At the bus station you would be able to get your tickets cheaper + it will be totally legit and "recognizable". In case you want to see websites of the actual bus companies that run the connection, then you should look at
Croatian Eurolines,
Globtour,
Centrotrans, etc.
Dubrovnik -> Kotor using ? Buscroatia again?
Same story as above. Imho, it just makes sense to check with Dubrovnik bus station schedule (
here) and leave ticket purchase to the time you will be in Dubrovnik. In this part of the world almost nobody buys tickets in advance (in many cases ticket sale in advance is not even available), so no worries about sold out connections
Kotor -> Ulcinj using ? (would I have to take a bus to Podgorica and then another bus to Ulcinj?
No, absolutely no need to go up to the mountains (obviously unless you want to travel old scenic Kotor-Njegusi-Cetinje road). You can stay by seaside and travel along the cost either by direct bus from Kotor to Ulcinj, or with change in Bar (buses from Kotor to Bar and from Bar to Ulcinj are more frequent, so you'll have more options)
Ulcinj -> Tirana using (http://www.busstation-ulcinj-montenegro.com/index.php/departure-timetable-bus-lines-in-ulcinj-central-coach-station.html)
Again, it's not really a bus company, but just Ulcinj bus station schedule.