Fifty days seems like a long time, until you divide it between all of the destinations that you've listed.
The suggested itinerary seems very good, though I have to say that I have only been some of the destinations you listed, and none in the Balkans.
What appeals to you about the destinations you've already visited, and those on your list for this upcoming trip? For example, history, the outdoors / nature and hiking or biking, culture, food? That may help you to narrow down your locations, and perhaps to drop some so you can focus in more depth on some areas rather than visiting 6-8 countries for shorter periods of time. Also, you provided a list of cities; would you like to visit the countryside or smaller towns/villages near any of those cities, or do you prefer to visit cities only?
In terms of flying out of Frankfurt, if that's the only reason you would be going there, you could seek flights that would (for example) from Budapest, then connect in Frankfurt for your return to India.
If you want to visit Athens for its history, and more specifically its place in terms of the impact of Athens/Greece on western history, then Athens is worth five days or so, and more if you want to do day trips. Or you could rent a car from Athens and visit many ancient sites and gorgeous towns, such as Nafpflio (close to the ancient site of Mycenae), Olympia, Meteora, Delphi. Some of those could be done as day trips, though we recently spent three lovely nights in Nafplio so we could enjoy that town while visiting ancient sites near there.