Why don’t you try doing what Blizzard did in Overwatch?
Leaving your second (or later) ranked match will result in a 75% xp and credits penalty in all gamemodes for X time (maybe 3 ingame hours or start with 1 hour and increase the time if you abandon more games up to 12 hours, you can think of something yourself)
If you leave only 1 match, you will only receive an abandon penalty but no xp/credit penalty because it’s not fair to people who get DC’d.
Playing Y full ranked matches (I think 10 games fair but again, your choice) will allow you to abandon another match without receiving the 75% xp/credit penalty.
So let’s say you played a casual match that lasted 10 minutes and earned 8,000xp in that game. You won the game and were topscore
After the match is over:
You will only receive 45 credits and 2000 xp for it (12 * 10 * 1.5 * 0.25 credits | 8000 * 0.25 xp).
Credit boosters will remain unaffected (so if you had a credit booster active that game, you will receive 180 + 45 = 225 credits because boosters won’t be affected by the penalty).
The xp penalty will also be applied only after the match is over so you won’t be bottomscore at all times as that would just make everyone think you’re bad and it will stop you from getting the extra few credits which makes it even worse
Also would be nice if you gave some bonus to the team that had a leaver. Maybe decreased elo loss (or increased gain if they manage to win the 4v5 game).
Or some free ranked points for the unfair game.
TL;DR: if you rage quit from ranked, you receive 75% less xp and credits from games for X time