I've long held the belief that testing for performance enhancing drugs (PEDs) is not enough. Those programs try to weed out the cheaters which is fine but other than losing the service of those cheaters - the teams that sign them don't suffer at all (they don't even have to pay those players during drug suspensions).
What I'd suggest is simple - while a player is suspended the team also loses his active 25-man roster slot. Make the team play shorthanded. Make them feel some pain. Give them another reason to think twice about signing a player they have suspicions about. Imagine having to go into the World Series down a roster slot to your competition?
Of course this would never happen because the teams don't want to feel that pain and the players association doesn't want to lose that roster spot either.