That makes it more challenging. Who came up with the account number specification?
You could setup for each scenario and validate against characters rather than digits so you would have 4 rules. You can do the custom pattern with just characters (.)
1 character add 4 spaces
2 characters add 3 spaces
3 characters add 2 spaces
4 characters add 1 space
Else no padding
Have you tried in your filter Account_NumfromUserEntry = normalize-space(Accountnumfromlist)
That should be the proper approach. That way it compares what was entered with the list value without the space.