I've been the DH is the relationship, my exh and I had debts and wanted to buy house etc so we agreed a budget each week. The same amount for each of us. He would go over budget each week without fail, it was a decent amount too £120 a week ten years ago!!
He even used to take the rent money from our friend who lodged with us and spend that, I only found out when he moved out and asked him for it and he told me he'd given it to DH.
I'd find myself trying to save a little each week for a pair of shoes or a dress only after I'd saved it up ended up handing it over for a bill or debt payment.
What OP is doing is the same, it wasn't a one of overspend she has admitted it's been every week for months.
What on earth is a necessary spend from Amazon!? 
Kids shoes or a bigger than expected electric bill maybe.
In the end I stopped bothering, I managed all the finances, didn't tell him anything (he didn't ask) and over 2/3 years saved a deposit for an investment property.
The OP husband isn't withholding money, he is giving her the same amount as he has just in cash, removing the temptation to overspend as she has proven she can't manage this herself.