Thank you everybody for the condolences. It means a lot to me, more than I had realized it would.
My vet called a couple days later with some final information. He was definitely suffering from end-stage kidney disease (which we knew from the bloodwork, but she found more evidence); his liver, while problematic, was not a factor in this. And yes, he did have the gallstone we suspected starting two years ago, but no, it wasn't the problem either. She did not find any tumors. We don't know what was causing the anemia; process of elimination suggests ulcers, which we were treating speculatively.
So, bottom line, according to my vet (and the ultrasound vet) we did everything right. The ultrasound vet told us that he considers any cat who reaches age 17 to have kidney disease whether you see it in the tests or not. I'm introducing Baldur to dietary changes -- can't hurt, might help.