http://www.steam-packet.com/SailandRail
The above info may be of some help in terms of fares.
With regard to Heysham to Lancaster, Stagecoach operate a regular bus service which may be of use if staying overnight near the port (though the last bus departs at 23:16 in the evening).
To save on costs one could rejoin the railway at Bare Lane station the following day; one of the bus routes appears to link Heysham to it.
http://www.stagecoachbus.com/PdfUploads/Timetable_15327_3%203A%204%20N1%20X1%20%28Lancaster%29.pdf
http://www.stagecoachbus.com/PdfUploads/Timetable_15326_2%202A%20X2%20%28Lancaster%29.pdf
The above would seem to be the majority (if not all) of the bus routes serving Heysham.
Given it's not that far from Morecambe to Heysham Port it shouldn't be out of the question for future consideration to be given to extending the last Morecambe train to serve the port, at the very least on certain days/certain times of year.
It would probably entail deferring the current 22:35 ex Lancaster around ten or fifteen minutes. Though as Lancaster station is (according to NRE) staffed until midnight, the return train would need to be away from the port just after half eleven.
Such a Lancaster-Heysham train would allow a train connection to the 02.15 ex Heysham with connections from all parts of the country possible. Early but do-able (the terminal at Heysham reopens at 22:30hrs.). I'd be inclined to think many would avail of such a train though acknowledge that its return back to Lancaster would probably be of limited utility due to the understandable lack of onward rail services from Lancaster until the following morning. However the train would also be doubling-up as a local train so local traffic would add to revenue too.
With regard to SailRail tickets I often have left England in the evening, Holyhead in the early hours of the following morning and to my destination provincial station in Ireland a little later that following morning. The ticket is dated for the evening I depart England/Wales and to the untrained eye it could look as if the ticket wasn't valid in Ireland (due to it showing the previous day's date). I did query this once at Euston but was reassured there was nothing to worry about. And this side I've never thus far had a problem. But the system should really generate a double date or issue a separate coupon for the Irish side.