I see two problems, both closely related. Not surprisingly, these are the two biggest and most common mistakes made by first-time travelers...
- You have too many places for the time you have, and,
- You have failed to account for the fact that every time you pick up and move yourself to a new location, that typically consumes most of that day.
So...
You have 8 full, usable days, on the ground in Europe (not counting your arrival nor your departure days). Your itinerary includes at least 5 different locations (Dubrovnik, some island, Split, Trogir, Budapest). Five locations in 8 days simply won't work.
Getting around in Croatia is not super fast. Ferries take time (and waiting for the ferry takes even more time). Taking a bus (and waiting for it) takes time. Worst of all, you are planning to spend a whole day on a bus going from Croatia to Budapest? You only have 8 days to play with and you're spending one of them on a bus.
It's important to recognize and accept that the basic, mundane tasks required to stay alive, function, and be reasonably happy/comfortable will consume a significant part of every day, even when you are staying put in one place.
On top of that, the tasks required to move from one location to another consume more time than you think they will - for experienced travelers, going from one city to another, with excellent, efficient train connections, takes at least half a day: you have to wake up, eat, gather your things, check out of your accommodations, find your way to the train, wait for your train, ride it for hours, exit the train, get oriented in a new unfamiliar city where you don't speak the language and everything is at least a bit different from what you're used to, find your way to your new accommodation, get lost once or twice, check in, go out, grab a bite to eat, etc. etc. The time required for these tasks add up - and as this is your first trip, you will not be efficient!
As a rule of thumb, if you say you have X days in any location, then you really have X-1 days to actually spend there. So "one night stands" -- which you have a lot of -- means your day is spent getting there, then you have (at best) a few hours in the evening around dinner time, then you sleep, wake up, and move on, and repeat. You spend almost all your time getting someplace, and almost no time at all actually being someplace (and enjoying it).
With 8 days, you should pick two locations (at the most, maybe three), not five. And don't spend one of those days sitting on a bus (I don't know anything about bus service between Croatia and Hungary, except that any bus is going to take way too long).
Basically, your trip as planned will give you 2 days in Dubrovnik, 2 days in Budapest, and a lot of time in between, rushing past some of Europe's most interesting places, which you won't really get to see or enjoy.
I would suggest you pick either Croatia or Hungary for this trip, not both. You don't have time for both. You barely have time for just some of the major highlights of one.
You say you have a flight booked to Zagreb. But you don't want to spend any time in Zagreb. So why fly there then waste most of a day getting to Dubrovnik, which seems to be where you actually want to go? Fly to Dubrovnik!
I know this isn't what you wanted to hear, but it's what you need to know, before you make a great mistake that turns your trip into a grim death-march, leaving you with memories only of what you saw briefly through the windows of a bus.