Cool! Well if it's something you think would be a viable change in your module code, I can (on a new copy of it) try to make the system I'm thinking of work.
It would also mean less rows in the users table, because instead of recording every individual file the user has purchased, we're just tracking the Model (SKU). So even if more files are added to the SKU, everything updates automatically since it's an independent relationship.
I can attempt the change and let you know how things work out.