I don't like to give recommendations without lots of details, but I do kinda have an idea as to how this could go. Here it is:
Microsoft, Sony, and Nintendo have your account info, contact info(email specifically), and maybe even metadata for how much you play or buy on your account.
Pull a report:
Name, Email, sorted by total play time in the past 6 months.
Create email campaign:
Form email should say something like, "Hello, we see how much you have loved your PS5 lately, we wanted to give you first chance to reserve a PS6. Click this link to reserve a PS6 and we will send you an invoice once it becomes available. You will have 1 week to purchase or lose your spot."
Send campaign to top 60-75% of users by playtime(or if one must, us an algorithm based on how much one has spent which also factors playtime), in waves, slow enough so it doesn't interfere with stocking up B&Ms and amazon, but fast enough so that it makes sure everyone in that top percentile of playtime has an opportunity to buy a PS5 within the first 6-12 months of it being available depending on the current state of things.
Dropship these items when the invoice is paid.
Profit. Most will still miss their chance due to inaction and be in the same boat, but nobody could say they didn't have a chance to get theirs, people that really cared would be stocked, and the big retail outlets would be mostly unharmed. Scalpers could still scalp, even, but most everyone that currently enjoys console gaming as a hobby would have the chance to bypass them completely and early on in the consoles lifecycle, on a one time chance. This would also be relatively easy to implement and require few or no changes to any online stores, code, or anything else, so it is a cheap and easy way to not fix, but at least soothe the issue.