Just an idea...
I think that it might be possible to re-structure Stayman to have a 2S rebid by Opener (1NT-P-2C-P-2S) show four spades and a minimum. 2D, then, would show either no 4-card major OR if spades a maximum.
For examples of how this would unwind...
2S-P-P-P (stopping at 2S is good)
3S = four spades, accepts game try
3H = five spades, maximum
4S(four spades maximum)
2D-P-3H(4-4 or 4-5)-P-
3S = 3 spades
4C+ = 4 spades
2D-P-3NT (not four spades; spade situation kept secret)
This type of tweak might allow some stops at 2S and might further allow some degree of knowing whether pener has minimum or maximum, in some sequences.
I am not sure whether this is worth it, but ideas are ideas.