Set up dynamic serving based on user agent so you detect when mobile users request these pages. Then respond with a Vary HTTP header and a coming soon page if the user is on a mobile device, or the Vary HTTP header and the original page if the user uses a desktop pc.
You can also follow this suggestion and serve the coming soon page with a 503 error to indicate that the URL is valid, but when it comes to mobile users:
"The server is currently unable to handle the request due to a temporary overloading or maintenance of the server. The implication is that this is a temporary condition which will be alleviated after some delay."
This way you can keep your urls the same (assuming you do that already) and just serve different content depending on user-agent. You will also signal ISPs to take user agent into account when serving your content.
Listed options 1 and 3 are not good in my opinion. Content wise said pages may not be relevant to your homepage, so no reason to 3xx link them there, especially when users expect to see the content of the url they visit and not your homepage (with no information how and why they got redirect).
Lastly, you do not want a valid url (for desktop users) to be associated with a 404 error when mobile users try to reach the page.