Correct me if I am wrong because I didn't romance Astarion in my playthrough.
I read some where that Astarion will remain as a vampire in the end but Tav who romanced him stays by his side in one of the so called "good" ending? I think this is a pretty decent ending?
The problem is not him staying a vampire and doesn't even have to do anything with romancing him. The problem is the scene on the docks. After all he's gone through, and just started recovering, he runs away in pain while some other companion makes a dumb comment. And you can't even go after him.