The problem with subjectivism, I think, is that it confuses morality with other sorts of value. Value is indeed often agent-relative; our tastes may differ, or something may happen that is good for you and yet bad for me. But morality is a specific subset of value. It isn't about what's "good for me" or "good for you", it's about what's good for us, collectively. And this, as I will endeavour to show in this post, is a matter of objective fact - that is, it is something about which our beliefs may be mistaken.
Before we get into morality, note that even agent-relative value concerns objective facts. This is because value derives from desire fulfillment, and this is clearly something we can be mistaken about. You might think smoking is good for you, until you get lung cancer, at which point you will realise that you were previously mistaken about what was in your best interests.
So, although value is assigned relative to a 'valuer' (or set of desires), it becomes an objective matter once this parameter is fixed. It is a matter of objective fact whether something is good or bad relative to a particular set of desires. Such 'objective relativism' sounds oxymoronic, but it's really no more odd than other such relational facts as that birds are larger than bees, and Europe is north of Africa.
According to our general analysis of value, 'X is good' is considered to simply reduce to 'X is such to fulfill the desires in question'. Now that we're interested specifically in moral value, we must specify precisely which desires those would be. I would suggest: all of them, i.e. the aggregate of everyone's desires. I find this a fairly intuitive claim, and one which comports well with how we use moral terms. Besides, there don't seem any plausible alternatives. For example, to consider only your own desires, would be described as self-interest, not morality. More generally, it would seem unacceptably arbitrary to include the desires of some people but not others. Morality is supposed to be more universal than that.
I think this conception of morality captures the best of both objectivism and subjectivism. Subjectivists are right that there are no mind-independent values 'out there' in the world, just waiting for us to detect them. We read value into the world; it's not something that's "objectively" there to begin with.
However, it does not follow that all value is just a matter of opinion; this is where subjectivists go drastically wrong. The question of how to fulfill a set of desires is one that has an objective answer, quite independently of our individual beliefs about the matter. What is "good for us" has the same answer whether asked by you or by me, for the parameter remains fixed on that same group - "us" - the entire time. So the objectivist is correct to maintain that morality is universal, and grounded on something more solid than mere individual opinions.
I'm effectively accepting the general subjectivist framework described in my previous post, but suggesting that questions of moral value are concerned with a particular 'viewpoint': that of humanity as a whole. For those who are interested in assessing values from this perspective (i.e. the perspective that yields what we call 'moral' values), it is a matter of objective fact that Martin Luther King Jr. improved the world. It's not just my opinion that he helped fulfill desires generally; it's damn well true that he did so.
So we can have quasi-objective morality whilst recognising that there is no 'intrinsic' value existing in the world independently of human interests and desires. We can have an objective moral relativism. What more could we want?
See also Alonzo Fyfe's essay, Resolving the Objectivist/Subjectivist Debate.
Update: As to why we might be interested in the moral perspective, see here.