This can be done using eCart and Data Bridge.
eCart would be used for processing the membership purchase.
Data Bridge includes Security Assist which would be used to create the membership area.
You would need to use user level authentication. and set it up so that the user registers initially at a basic level, then purchases a premium membership. once the transaction is processed through paypal, the user level is updated and they can access the profile page.
As for offering the print option, that is done using the browsers print button, usually located under the file menu, or you could use javascript to add a print button to your page:
Print-a-Web-Page-Using-JavaScript.htm