Lima: Cheap, basic. in the old part of town. You can arrange an airport pick up with them: http://www.hotelespanaperu.com/ingles/home.html
Puno: http://www.losuros.com/ clean, central
Cuzco: http://hotelincawasi.com/indexing.html Not a hostel, but right on the main plaza, try turning up and...