This might be controversial since it directly reverts behavior that was explicitly included in #4331 (merged as #5831)
That PR took the approach that if subtractFeeFromAmount was selected then it would be unexpected for the user to ever spend (net of sent - received) more bitcoins than the amount they requested to pay. Therefore if any change was under the dust limit, instead of sending it to fee, the change was increased to the dust limit.
I believe this is misguided. Creating a change output at the dust limit is likely uneconomical. There is a difference between having to draw a threshold below which all outputs are useless, and inverting that to say that an output just above that limit is useful. Giving yourself change at the dust limit is no better (and maybe even worse) than not giving yourself change in the first place, so I don't believe it will adversely affect anyone who was not expecting to spend more coins than the pay amount.
The primary reason for this change is to make our wallet smarter about not creating uselessly small outputs. To increase the change to the point where it was sufficiently big to be useful would require potentially removing too much from the recipients.