If you don't want to debate, that's fine, but I'm probably still going to reply with what I think and why I'm thinking that
I'm mostly trying to ensure that things stay friendly, even though I suspect there is at least one aspect that we will disagree over at a fundamental level. That's okay, the system isn't perfect and there are places it can and should still be adjusted, but generally speaking 5e is very sound and well balanced, and its solutions are, in most cases, the best solutions in terms of maintaining the balance between practicality, approachability and realism... Simple and approachable, easy to understand, and a rule system that is internally consistent wit itself without too many exceptions or irregularities, so that it is easy for newcomers to pick up and play with, but without sacrificing attention to realism and relatability to in-setting sense is a strong element of the design philosophy I mentioned.
So, here's the reasoning discussion:
In 5e, classes are intended to retain strong senses of individuality and uniqueness as you move into their various archetypes, and while each can fill a variety of roles, and they are all intended to be able to fill those roles comparatively well to each other, they maintain a sense of unique flavour to them while doing so - A Cleric can be your party healer, and so can your Druid, and so can your Sorcerer - but they will each feel different, to play, and they will feel different and distinct from each other in the process. That's the goal. What this often means is that some classes and class archetypes are allowed to maintain something of a near-monopoly on being able to do certain things particularly well, because doing those certain things better than anyone else are is part of what helps them maintain that unique flavour. It's rarely a very big thing, but it's a poignant one all the same in these cases.
Battle-master Fighter is one example of this design philosophy - All characters can try most of the various things that battle-masters can do, but for everyone else, it's a comparative cost investment - for example, they can try to knock an enemy prone, OR they can settle for attempting to do damage - the Battle-master is unique in this sense because they have the capability, by contrast, to knock something prone without giving up their attempt to deal damage. There's more to it than this, of course, and it's not that cut and dry either, but that's one example.
So, at base, in order to turn shove into a bonus action that everyone can use, you would need to find a way to do that that didn't steal that class-identifying uniqueness form Battle-masters and give it to everyone for free - because if you do, then you remove part of the value and appeal of playing a battle-master, and you take one step closer to homogenising all classes - a point which Larian's BG3 is treading far too many dangerous steps towards already.
As for Shove itself... You are attempting to take an action, and your targeted opponent is attempting to prevent that from occurring. This is the simplest, straightforward description of what is happening. Both parties must have a chance here, but the design philosophy is focused on keeping these things as simple and clear as possible, while still maintaining a much of an element of realism as possible.
So, when you try to shove your opponent, who is standing right in front of you, you are not going to 'miss' them unless they do something to make you miss them - if they were an inanimate sandbag, even a small one that's only three feet high, you are not going to 'miss' them - there is no practical situation where you would or could. You'll miss, rather, if your opponent deftly ducks under or around you, or manages to dart aside in time. You might also fail to shove them if they surprised you with their planted feet and stoic resilience, and they straight up resist your effort directly. This is the realistic description of what might happen.
We can handle this with a single check, because 5e has a system of checks that is designed expressly for this type of situation - a situation where two or more forces are acting on a goal or outcome, with differing intent and in opposition to each other, wherein both may have a reasonable chance of succeeding or failing. That system is the Opposed Ability Check system - The forces in play roll against one another, using whatever ability score is most appropriate for them in the situation, and adding a skill proficiency if a particular skill is suitable. These can be different for each acting force. Whoever wins the roll achieves their goal, and in the case of a tie, the status quo remains as it was, unchanged. What this means is that if you are trying to force a door open, and someone on the other side is struggling to hold it shut, and you tie, then the door remains shut. If you are struggling to hold a door open against someone who is attempting to wrench it closed, and you tie, then the door remains open. For shoving, this means that in the case of a tie, the character remains where they are, and is not shoved away/down.
In 5e, Shove is defined as an opposed check, but leaves the choice of how to resist in the defender's hands - So, while the shover must use their Strength (Athletics) to attempt the shove, the defender can choose to resist with Strength (Athletics), or they can try to resist with Dexterity (Acrobatics). This makes it one simple check, but it covers the concept of the many different ways that the shove could succeed or fail; it covers 'missing' because your target evaded you, as well as failing because they resisted you, etc.
So you can try to knock them down, sure, that's one option (and importantly, it's a choice that the attacker makes, based on what they are trying to do - having an ability that can drastically change what it does base don chance is not something you want as a standard combat action; when you shove someone away from you, you usually, specifically,
don't want them prone, and vice-versa) - but what if you want to move them away? Well, that's potentially more complicated, says the thought process... how strong a character is, and the weight of what they're pushing must come into it surely? Yes, but... We can account for that and still keep it simple and approachable using the elements already defined for regular use within the system, without bringing new elements in. For starters: it's impractical to introduce maths or scales relating to character weight that both realised on an aspect of a character's weight that will give some races a
heavy disadvantage compared to others (something they wish very strongly to avoid), and also that expects players to book-keep their equipment weight - carry capacity rules have variants and are often treated as optional by many, so introducing a mechanic to s standard action that demands book-keeping for it is an immediate no.
Instead... Many class features already take into account size category of the target creature - and size category and weight go more or less hand in hand anyway, most of the time. So, what we do instead is say that you can only shove something that is no more than one size category larger than you - something bigger than that is, by proxy, going to be too massive and too heavy for you to effectively shove. This is how that is accounted for and worked into the consideration without making the whole mechanic more complicated... and it works well for doing that, the majority of the time.
In terms of shoving distance: Well, we can actually return to realism for this one. Mike, who bench-presses an excessive number at the gym three days a week can set up a 50lb sand bag on a gym mat, and then, with a single action, in the course of less than six seconds, attempt to shove it just as far as he can - not pick it up and throw it, mind you - that would be a grapple - but just shove it. How far CAN he actually shove it? The reality is, not actually that far. More than five feet clear of its original position? Actually, not really, as it turns out. This makes it much easier, and helps settle back some realism in the process - we can just say that if you're shoving something away, rather than knocking it prone, you can shove it into the next square - five feet away. If you want to shove something further than that, you'll need a special ability, magic, or something above and beyond what a regular person could do. Some classes
will have just such special abilities... but
regular people, and
basic shove - five feet is actually simple, easy and much more realistic than giving them more than five feet based on strength/weight.
==
Right now, in BG3, weight affects the impact damage that something does when thrown into another target - that's all entirely homebrew from Larian, however, and it's also hard to comment on because they don't let us see the calculation in the log. It just happens... and it's one of those things that pays up a lot, for free, and detracts from class abilities in the process. Unfortunately, having enemies going flying dozens of feet is not unintended by Larian - the 5ft range notifier on shove itself is just saying how close you have to be to use it - which is melee range - in BGT3 distance is affected, or so it claims, by strength and weight of target... the exact math is obfuscated from us though. The 100% success rate of shove form hiding is also, currently at least, intended by Larian... shove is supposed to work 100% of the time on an incapacitated target (which, ironically, in BG3 we aren't allowed to shove incapacitated targets... only dead ones), but simply hiding from them should, at most give you advantage on the opposed check, for being an unseen attacker.... but then I'd have to get into a rant about their shonky implementation of stealth, and that's a whole other thread...
==
For the rest - the main issue with proposing a two-check system for this simple combat action is that it's required that you pass both checks to do anything at all - you are rolling two d20s and if
Either of them is low enough to fail, then you fail utterly - if that sounds familiar, it's because it is. You've just forced the player to roll at innate disadvantage every time they try to shove someone, by definition. Beyond that, it's measuring against two different ability scores, which virtually no class will ever have high scores for
both, so they are very likely to fail
at least one of those checks, no matter who they are, and thus fail the shove in totality.
((Addendum: Halflings are not balls, do not kick the halflings, please))