We can't say whether the pass is worth it or not but it usually is good value as you're going to Switzerland. A 4, 5 or 7 days within a month pass may be enough -> only the departure day of the night train counts. Of course you wn't be able to take trains the following morning.
Milan - Verona : 13€ seat reservation for the Frecciarossa (no booking fee on ÖBB) but regional trains don't take much longer.
Bernina Railway :
- Bernina Express : panorama carriages (26 CHF seat reservation) or regular carriages at the front, warning : those to St. Moritz have less seats than those to Chur
- hourly regional trains on the same line : less crowded, pull-down windows and some carriages are even open-air in summer !
Unless accommodation is already booked in St. Moritz, I'd consider staying elsewhere in the Engadin Valley. St. Moritz just is a resort for rich people and finally not that beautiful. There are prettier villages like Zuoz.
Seat reservations are not necessary or even possible in Switzerland. In Germany optional but recommended :
- 3€ per train on ÖBB
- 4.90€ per journey on DB
Btw the night train from Prague to Zurich also stops in Dresden. However it is very popular so book well in advance, use nightjet.com