If you are accessing lots of unique actor values that aren’t default values, e.g. you’ve placed many collectable actors and, in level, changed their default values. If that is the case:
Never destroy the actors, but make them inactive and invisible. That way you only need a reference to them in your inventory, and you could toggle its inactivity status as you want that item to exist again.
This is because the data you want to store in the Inventory Struct shouldn’t be specific any actor. This generic data could be numerical values, which actors can parse into variation, or an index for swapping a mesh. The actor should know what to do with the data it receives.
Otherwise check out my comment on the other answer.