Profile fields shown during registration
The field permissions module should help with this.  You can set individual permissions on fields of user and node entities.  If you set a field permission to be visible to only authenticated users, then it won't show on the sign up page.

Here is an example with screenshots:

These are the fields I have in Profile 2


When editing the field for "Will not be visible" I scroll to Field visiblity and permissions and select custom.  Then check the types of users that can see/edit values for themselves and others.  By default everything is only checked for admin.


Then when going to create an account you can see the "Will not be visible" field is not visible.