Most of those countries (except Albania) will cross-change their currencies. So you could e.g. get a handful of Croatian Kuna at an ATM there, then change it to Serbian Dinar, Bosnian Mark and Macedonian Denar as you go along. As for Albania, you might be able to exchange MK Denar for Leks, but I'm not sure of that... And, of course, Montenegro uses the Euro as the native currency, so depending on your itinerary, you can just change all of the leftover other currencies to euros there.
If you'll be going through Croatia, I might give you a handful of Lek that I ended up with a few years back, and hope to never get a chance to spend