As far as the accommodation is concerned probably the best and most affordable is to stay in one of local's homes. Many have rooms for rent, especially during the summer season. Often by the bus station you'll see locals with available rooms to rent waiting for tourists and taking them home. You may also see signs on the side of the houses stating rooms for rent or you may just ask someone in a caffe or a restaurant if they know of anyone with a room for rent.
Perast is one of my favorite places in Boka Bay in Montenegro. I'd recommend you visit Ćatovića Mlini restaurant - old water mill that's been converted to a restaurant. On the way from Dubrovnik, you should stop in Herceg Novi. If you have the time I'd recommend Kotor and Budva as well. At Perast, take a taxi boat to Gospa od Škrpjela island with the small church. It is in the middle of the bay - you cannot miss it.
My favorite is Old Town, Kotor - Montenegro, very authentic and beautiful place! If you are in that area and would like to be on nice beach near wild nature, recommendation is sandy beach Plavi Horizonti in Radovici. On Lustica Bay is also placed fancy beach/club, interesting for young people Almara Beach Club.
Hey there, head to Budva and Sveti Stefan in Montenegro. Budva has a cute little old city and beaches, and Sveti Stefan is a lovely beach as well, plus there is an island there. I wrote about my time in Montenegro if you are interested: www.dtravelsround.com