I've been doing exactly this for years with Revolut premium (and I'm sure many other "online banks" have the same service). It's like using a password manager, you don't have to worry about how your card details are stored anymore.
It is very neat although I got into strange situations a few times when I needed to prove I was the card owner for a refund or for insurance claims.
Don't you already get this with Verified by Visa and MasterCard SecureCode? You don't need new credit card numbers to do this.
But merchants don't implement it... because it's an extra step and consumers don't like it. The very last thing a merchant wants to do is put an extra step in front of someone just about to buy.
I don't understand how you think you can get a new number for each transaction without any extra step getting in the way? How does your card issuer know you want a new number and how much to set the limit?
Do you go to an app? That's a separate step. Consumers demonstrably don't want extra steps.
Do you integrate it with the merchant and do it automatically? Then it's no safer as there's no authorisation.
Eliminates risk of 'stealing' a credit card, mostly.
But it would use a butt-ton of numbers. Maybe a UUID?