So there's no actual way to prevent the loss when you have a leaver. If you were playing in ranked and two people were in a duo, one of them could afk so that the other person wouldn't lose LP (you scratch my back I scratch yours). I know it sucks, trust me, but there isn't a way to fix it.
There certainly is a way to fix this.
If someone leaves early in the game or doesn't leave the base for and extended period and the team loses, you simply add up all the LP loss and give it to a single person (or split it between the leavers/AFKers) and allow the other players to get no LP gain or loss. The other teams gets slightly reduced LP for the win because they didn't actually win the game against a full strength team.
It wouldn't take long for people not to leave a ranked game if they lost massive chunks of LP in doing so. This could have a grace period of 1 or so games in a specific time window that it would allow before this took effect for internet issues or power issues.
I personally don't play ranked and would like to, but since Riot is lazy and doesn't analyze play to determine the amount of LP gained or lost, it handicaps people like myself that seem to constantly get the bad players randomed on their team.
Unlike other games where one champ can carry a game, League has been designed to prevent that. Feeding the other team makes them extremely strong, so there is no way to recover properly till they actually decide to analyze actions in game to determine LP loss/gain and not just win or loss.
Some say that would be hard, but that's just an excuse to be lazy. Things like warding, scanning, buying properly, not 1v5ing, assisting, etc are all things that make for good players and are super easy to track. If anyone watches LCS, they make a big deal about the little things that are able to be tracked as to the reasons why a team wins or loses. Not analyzing game play and adding/subtracting addition LP for playing properly is just plain lazy.