It seems as if the issue here is just clarity of the ability then (and we all know how much Riot loves to talk about clarity in the game)... Lets say for instance the E, as strange and confusing as these cases are, are functioning 100% as intended, there's no intention of changing it from Riot, and a small group in the community is aware of how it functions in these cases and how to use it to their advantage. Now lets take a player who is extremely mechanically skilled, but for some reason has never played against a Jayce in game, but knows his kit inside and out on paper. This player goes and plays against the Jayce, who then abuses this mechanic of the E. Now the new player is thinking "Wait, his E is a knockback, "x" SHOULD be happening, but instead "y" is happening instead. Why?". To this the player responds "Well yea, his E is a knockback, but it does some weird stuff...". They try to explain it, but in the end, it just boils down to "Well he's just Jayce and thats what he does". You, having a ton of experience on Jayce, obviously know how it functions, but to everyone else it just makes no sense visually. Its like they were driving in a car, got hit by another car in the side, and flew backwards instead of forwards/to the side.
And to the point of whether or not Jayce can adequately fight someone (ex a Yasuo), whats the issue if he just simply can't adequately fight someone? Assuming ideal conditions (and the E functioning in the "logical" case), Jayce simply boops Yasuo away before he gets to him... If he doesn't do it in time, he gets punished by knocking Yasuo in between himself and wherever he needs to run to. OR, he actually WANTS to knock Yasuo further behind him... In this case, you need to WAIT for the dash to "finish" per se, and THEN cast E. This situation actually gives your opponent a slight window to do something to you because you 'logically' know you should knock him back immediately, but have to wait to prevent the opposite from occurring. Currently, the E is honestly every forgiving, giving you a huge window of opportunity to just nullify enemy movement (not that that's a bad thing... Jayce E SHOULD be disrupting enemy movement, its just much more unforgiving to a skilled player who is able to position themselves behind Jayce via a dash. In that situation, the enemy player SHOULD be rewarded for their play.) Jayce, inherently, is a huge long ranged threat, and likewise should be a bit more vulnerable up in close range. Jayce is unique in that he can just switch forms to combat this weakness, giving up range for up close power (again, absolutely not a bad thing). This should allow him to go toe to toe with some beefier opponents, but imo not a slippery fighter/assassin, who should be rewarded for out maneuvering him.
I feel that it would be a much greater expression of skill and give the ability much needed clarity if it functioned in the 'logical' sense. Currently, it honestly covers up a huge weakness of his (He should be competent at peeling some somewhat sticky people off of him and getting away... He should be punished by super slippery/super sticky champions), so fixing the ability and making it 'logical' lets opponents play around that weakness, while allowing the Jayce to pull off more skillful plays. Giving a champion invisible/unclear power, just for the sake of being able to fight a certain type of champion, completely undermines the principle of clarity.
And there are far worse people in this world than Fiora players (cough Fizz cough)