What you are glossing over is how dependent those RBI situations are on a player's teammates: completely. It's not "somewhat" or "sort of" dependent on things outside of an individual player's control, it's completely out of his control whether a given plate appearance has the potential to create an RBI (save for the one-run home run).
And while the use of RBI's in outright comparisons has been mitigated somewhat by the emergence of other metrics, people still use RBI's as implicit comparisons to another player, team or the league.
Take, for instance, the example I used in the article: two players on different teams, both with the same production in rate statistics (HR rate, walk rate, AVG, OBP, SLG) but one player plays on a team where the other 8 hitters average a .400 OBP and the other player's teammates average a .200 OBP. At the end of the season, who is the better player?
Their rate statistics will be exactly the same, but their RBI totals will be vastly different, and the player that benefited from having great teammates in front of him will inevitably be labeled "better" (because of his mammoth RBI total) despite having more RBI's than his counterpart only because his teammates gave him more chances.
And people forget that to laud a player for having a high RBI total is to implicitly criticize others for not doing the same, despite all RBI totals not being created equal.