I have one idea for how to eliminate the bias towards steals: eliminate steals from the equation! Okay, okay, sounds crazy, I know, but I do remember that when I used to use a similar system that it was always difficult to eliminate the huge bonus the big stolen base guys got.
That's not to say that someone like Pierre is generally undervalued (though I wouldn't say he's the most valuable fantasy player in baseball). Given, Pierre alone can guarantee that you finish in the top 3 or 4 of stolen bases, and that's pretty valuable. But remember that these rankings are presumably going to be used in a real-life draft. Keep in mind that folks tend to undervalue stolen bases.
'Eliminate' is probably the wrong word to use. 'Isolate' might be better. Run the analysis without the stolen base category. Then also rank players based on stolen bases (I like using one of the metrics above, producing a ratio based either upon league average or, perhaps better here, based on the MLB leader).
Then, in a real life draft, you have to use some knowledge of when you think others in your league will start grabbing stolen base guys. It's like saves. Most leagues I'm in have 'closer runs' somewhere between the 6th - 8th rounds. Top closers tend to be more valuable than a 6th to 8th round pick, but we wait to pick them anyways, based upon what we know about when closers tend to get picked. Admittedly, closers are fragile critters, but how many stolen base guys see a huge drop in production from one year to the next? (I'm looking at you, Castillo.)
So maybe we should start treating steals like saves. It might be good enough for draft purposes to have a good idea of where you can get stolen bases, and to not be afraid to take a Pierre in say, round 4 or 5.
wrveres, any chance you could run the analysis minus the stolen bases? That might be interesting. Also, where are you downloading your data from? I'd like to be able to download the season stats into an excel friendly file. Thanks.