You say that you "don't want it to be a portal" but that's exactly what you need here as the alternatives are far more complex and needlessly so.
But it's not that Shops should "Be a portal". You need a new, related table linking shops with parts. This is a standard invoicing structure and the settings in such a related table of line items can be very easily and simply set up to use either an auto-enter calculation or a looked up value setting to copy over any data from parts that should be copied.
Phil has good advice.
You really need a join table for this from what I can see. If you want to do this in List view you can, but somewhere you will need a single row portal for making new selections. Maybe I am not understanding the usage between Parts and Shop.