A long time ago, I think in the late 90s, there was a LARP Con and it is one of the most maganificent things I have ever heard of, it might be applicable as well here:
Basically, a couple of guys made a con, where they went to eastern Europe, rented an entire fucking castle, complete with moat, bailey and all that stuff. Then they grabbed a shitton of students from a nearby city, paid them a few Marks for participating as NPCs and set up a group of players withain the castle to defend the castle during a siege by the NPCs.
The plot was something along the lines of it being the end of the world and a few remaining heroes defending a divine child until a portal to another world can be opened, so the last survivors can escape with the new child to start anew.
The kicker was this: The game started out with the NPCs evenly matched with player characters, but whenever a player character died, he became part of the sieging force. After 2 days, the number of defenders had shrunken to only a handful, defending against a huge host.
At the end, the last 5 survivors had to defend the last few rooms of the castle not yet overrun, 3 stayed back to hold a door, while the other two ran for the ritual chamber with the child. They finally were able to start the ritual, but when they did, they heard their comrades die, screaming to their friends to hurry and escape. Soon, they heard the enemies pounding at the door, so while the one guy was busy with the ritual, the other looked a last time at his friend, drew his sword and stemmed the tide of enemies in the doorway. He fought valiantly and managed to push them back, but fell to their attacks.
In the end, the last guy grabbed the child and rushed through the magic portal to safety, just as the hordes flooded the room.
Something like that might be worth a shot. A last defiant stand in such a way that some people have to sacrifice themselves. Just try to end it on a bittersweet note, where the heroes manage to protect a last, small sanctuary or something that might be a kernel of hope for the future. And then, make another campaign or oneshot (like a short epilogue) set in the same world a couple years in the future, where the original characters have become legends and the players learn that their sacrifice has not been in vain.