Hello,
No, from our point of view the Custom fields is the best way to process, as I don't know the way you want structure your data, or to be more precise how the data will intersect... Why you don't use Custom Field restriction part ?
In details you can create restrictions through Categories or even list several products.
Plus, it's possible to have a custom field display (in general) only when a previous custom field as a precise selected value (Display limited to).
Hope this will help you to move forward on your subject.
Regards