We already have this: if you don't use your budget by xyz date, you lose it
> money that is programmed to only be spent on certain goods or services
Food stamps can only be spent on food, you must meet specific criteria for tax credits, etc.
> high barriers to entry for businesses who want to allow money to be spent with them
Some businesses will absolutely not take your money without extensive KYC already
> unaccountable/summary de-monetisation of persons and businesses on the whim of a government
Banks already arbitrarily shut down bank accounts with no recourse.
> universal credit/benefits being issued as CBDC instead of fiat currency, creating a two-tier society where only the rich get access to fiat
The whole point of money is that it's the common means of exchange, it's not very useful as money if only some people use it.
> money that can have its spending and issuing rules changed quickly and easily by the current government of the day
That's already the case today.