See, the problem with that is that you can then use that inability to move to a new location in order to benefit yourself. It creates a cheeseable effect.
Imagine that you have a dagger user and an axe+greatshield user. A perfectly valid strategy for them would be to send the shield user forward to draw a horde, and then have the dagger user stand back and use the spin slash into the greatshield user's tile. That would enable him to deal consistent AoE damage without ever exposing himself to a threatening situation or endangering his company.
No, I'm not willing to make that change. It doesn't make sense and it creates a bizarre loophole that can be exploited in a gainful way.
What about replacing the attack with a basic strike? If you're blocked as part of a weapon movement, your attack converts down to a one space yellow-tile strike in the direction you were moving. It's worse in all respects for the user, but it's consistent and potentially enables you to interrupt enemy reach attacks just by plowing into them.
I'm not sure if this is as cheeseable as you say, if you spin slash forward but the last tile is blocked, you could still have the spinner end up on the second to last tile in a consistent way, so it's really only a trick you can do once unless you want to commit multiple frames to moving around (which is then not that different then just moving out of danger normally)(If you're doing an attack with only a single hex of movement you don't move, in which case really, you've cheated out a single frame of movement. Which... Honestly doesn't feel like that big a deal to me.) or committing multiple people to the movement block which obviously isn't worth the opportunity cost of them having real actions (unless you had some absurdly tanky dude at the front. Like, way tanker then it seems possible to be yet.) and the whole thing is highly random unless the highest damage the dagger user can do is lower then the lowest damage the tank can do. You can't predict who will win the shove and thus can't really successfully plan ahead.
As for turning the bump into just a basic graze still isn't even consistent because once again your putting movement before damage in some but not all situations. IE: You try to move, fail, instead strike someone who then moves successfully in their own attack? (as an example of a possible weird outcome) I mean, it's better then the tiles moving around for sure. But if you wanted to insert extra areas where damage pops up after movement, you could destroy the viability of such an exploit (except by, once again having a ridiculously tanky tank) by like, making it so if you bump someone during movement you graze them.
Okay... So you still want some movement to occur, which kind of obviates the five tile dagger strike mentioned earlier, except in one situation where it REALLY doesn't make sense. (See example 2)
So, lets look at two examples, one imminently practical, one extreme.
Example 1. Grettir uses Rush R, NE at the start of this next round and Nullius uses heavy slash SE on the same frame.
Under your suggestion, if Grettir succeeds in a shove, then Nullius would be ejected NE and Grettir would move to occupy his tile. Nullius would still hit all three targets, and he'd be ejected NW to safely cool down his swing. Grettir would be able to hit all three of his targets as well. If Grettir fails his shove, then everything is the same except Nullius doesn't get moved back. Grettir is literally attacking into his teammate, but, because of the way threatened tiles would work, he'd still never endanger Nullius even in the worst scenario.
Example 2. You're completely surrounded.
Here's where things get weird with yours, really weird. If you're sufficiently surrounded, all of your abilities that would normally cause you to move become, essentially, ranged attacks. This means that if you box a rogue-ish character into a sufficiently defensive position, they can launch teleporting strikes without having the associated weapon ability. Spearmen can charge effectively even bogged down under a horde, and players with high mobility movesets are incentivized to cluster up so they can use one another as brakes.
I don't deny that the timing of attack-movement with the attack is a bit off, but I don't think this is the way to fix it. Instead of having a rules based gimmick that adds an artificial level of fuck you, this fix would give the players a rules gimmick that can be exploited for their benefit, and that's just not how I roll.
Anyway, lets put the handling of abrogated movement to a vote. I make no promises to abide by the result, but I want to see how people feel about it.
Method 1: Quantum Attack-Movement Entanglement Boogaloo (Current) The Point: If you cannot complete your movement during an attack that requires movement due to you losing a shove attempt, the spaces threatened by your attack collapse. This means that wherever you end up is considered the dark-blue tile of the attack, and the adjacent threatened tiles are adjusted in accordance with that.
Method 2: Separation of Attack State and Movement Church (Cript) The Point: All attacks and threatened tiles are evaluated before movement from weapon attacks is considered, regardless of whether or not the tile is blocked, the character is shoved, or any other movement interrupt occurs. WYSIWYG for the threatened tiles, no matter what's in the way.
Method 3: The Attack That Goes Bump in the Night. The Point: As Method 1, except instead moving the dark-blue tile to the character's final location and basing the attack off that, an attacking character that loses their shove gets a single half damage attack in the direction of their original attack.
Method 4: Bloody Co-locationThe Point: As Method 2, except that when two entities evaluate movement it is possible for their positions to briefly coincide. After the attacks are made, if two (or more) friendly entities end up on the same tile, they're both staggered. If they're enemies, they strike each other with full light weapon damage. If both moved as a result of an attack, then they both use the weapons they used to make the attack. If one of the entities did not attack in order to end up coincident, then they use their highest damage weapon. These attacks will count as a counters, if applicable. In the case of friendlies, if one moved onto another, then the party that created the co-location is ejected to the nearest open tile. Each tile traveled after the first re-rolls the stagger. If both moved onto the tile at the same time, then person ejected is decided by a coin flip. In the case of colocation with an enemy, the entity with the highest damage dealt gets to keep the tile and the other is punted to the nearest upon tile. Again, every tile traveled after the first rolls stagger.