If you follow the route that I explain below for Peru, you will not be wasting your time and money trying to go back and forth between cities in Peru. Here we go.
Your first route option starts in Lima. LIMA-> ICA / PARACAS-> NAZCA-> AREQUIPA / COLCA-> PUNO-> CUSCO- (FLIGHT)> LIMA
The route could also do it in the opposite direction: fly 1st to Cusco and then make the route in BUS ending in Lima.
LIMA- (FLIGHT)> CUSCO-> PUNO-> COLCA / AREQUIPA-> NAZCA-> ICA / PARACAS-> LIMA
Basically the stretch between Lima and Cusco is recommended to fly by plane at the beginning or end of your trip.
Now, how to buy the flights will depend on the rates you can get. You have to compare:
1. Buy flights to and from Lima + Lima-Cusco separately.
2. Buy one way to Lima + Cusco flight.
3. Buy direct flight to Cusco + Lima flight.
I do not recommend buying round trip to Cusco, it really does not make sense. You are very far to visit Lima and places on the coast. You spend a lot of time having to go back to Cusco to take your flight out.
Organize well the places you want to visit (before buying flights). Very important is your budget because the more you move and more places you visit, increases the expense.
Apart from this route, visiting the jungle can also be an option. From Cusco you can visit the Jungle in Manu or Tambopata (Puerto Maldonado) which is 10 hours from Cusco by bus.