To my understanding an IVs purpose is to make pokemon unique from each other. In my opinion the mechanics of all the different Natures, multiple Abilities/Hidden Abilities, tens to hundreds of Moves, and a possible 127 stat difference of EVs fulfill that role not only better, but also visually better, profoundly better, interactively better, and with more preferential control of the owner.
In short IVs are unknown/overlooked by the casual and avoided/bypassed on the competitive level. Sure there are exceptions of those who enjoy it for the sake of enjoying IVs. Im not here to make you like or hate them. Nor do I really care what each person's opinion is on them. I gave mine with reason and with that said my remedy and the point of this topic is to give IVs a purpose. How? Read on please.
One- First take away the possibility to RNG or hack or beat and even control its system/design:
We do this by not having IVs hardcoded into a pokemon's statistics. Instead IVs are randomized and added onto the stats for each pokemon each time you enter a battle. So in some battles you may see an impressive performance (better IV rolls) other battles your pokemon might not be at the top of his game (lower IV rolls).
This could be expanded on. Seasons or day/night might influence these chances to be higher or lower? Battles underwater might increase chance at lower speed IV rolls? Battles in the forest may fortify your pokemon's defenses and thus a better chance of higher IV def/s.def roll? Perhaps holding items can influence chance of getting a higher roll in certain or multiple stats? I'm just theorizing here.
But these variables add character to your pokemon and makes them unique all the times (some days we are more energetic, some days we think better, ect.) not only from other pokemon but also differently from itself. And most importantly it gives IVs its originally intended purpose of not being able to fully control them like we see happen with hacks/rnging.
Two- Put those that need it on a fair playing ground:
Know the current difference between a bad pokemon and a good one? One hundred and eighty-six stat points. Times that by a team of six? You get a 1,116 total stat difference. This is why you either RNG/hack to have a chance at winning or you do nothing and lose. That's not an opinion btw. Your welcome to look at the winners of official tournaments. Your welcome to look at the acceptance of perfect 31s throughout the community as standard. The result is the conclusion I just stated, the randomization (of IVs here) have zero purpose in competitive play because no one adheres to it.
So closing that gap to a more reasonable level is a solution to not having a completely useless pokemon on a bad roll. 0-7? 0-15? Im not sure. What is for sure is 0-31 doesn't work.
I feel a gap of somewhat is important however even if its 0-1. If you have two timid pokemon with 100 speed and 252evs into the stat go into a battle ...well you got the same effect everytime. But if you add a small gap of IVs that are chosen randomly each battle one can go first every round in one battle and the other might do so in the next battle.
Third- Make it compatible for all:
This is mostly a common sense step but you gotta address things like hidden power. Maybe hidden power changes depending on the IV roll per each battle? I would leave this to those who are better at crunching numbers and design. But if one change for compatibility can be made, so can many others.
Also this goes hand in hand with the first change but perhaps random chance (even with a small gap) isn't accepted competitively? No problem your pokemon will always be at its best when entering a tournament battle (set IV rolls to maximum value).
I guess point is IVs can be improved differently made to work better for everyone even if they like different aspects about it and/or play differently.