2 nights, a half day on Friday, a full day on Saturday, and another half day on Sunday. One full day and 2, at best, half days.
In 2004, I spent 5 nights, 4 whole days + 2 partial days, on the Rhein based in Boppard. I saw the Marksburg, St Goar (Rheinfels), Bacharach, Oberwesel, Koblenz, and the Boppard area.
In 2008, I spent 4 nights, 3 whole day + 2 partial days in a town on the Mosel near Cochem. I saw Cochem, Bernkastel, Zell, and Beilstein. Burg Eltz was closed for the season when I was on the Mosel.
I spent 9 nights, 7 whole days + 4 partial day, 10 venues. There's plenty to see see in the Rhein/Mosel area. You only have 1½ days. You'll get to Cochem too late on Friday to do much more than have dinner and briefly see the Cochem, probably not enough time to tour the Reichsburg. The best thing to see in that area, IMO, is Burg Eltz, but that will pretty much chew up Saturday. With a car, you might get to see Beilstein on Sunday. It's really small; doesn't take more than a couple of hours to see it. Or you might stop in St Goar (Rheinfels) on the ways to FRA.
I've been to Heidelberg twice. I wouldn't waste time going that far out of the way. I'd go to Mainz or Frankfurt (my choice would be Mainz) the last day before flying out.