1. I wouldn't use repeating fields. Repeating fields is old technology. Use relationship between tables, which will keep you from having to duplicate records.
2. No, you don't have to have a portal to view data from other tables. You need a relationship between tables that allows you to view data between different tables. Depending on the data you can use global fields which can be view on any layout. You can edit data in portals if you desire.