What you can do is redirect the user if the user agent is not “twitterbot” using server side logic.
So Twitter will render the card based on the page you shared, but users will be redirected elsewhere.
Not against terms as long as the content is related, it is not spam, is not impersonating another, malicious, etc.