I think you could do that with static int in GoblinCrown.cs.. You need to count that variable up +1 on every construction in the Constructor of GoblinCrown.cs. Furthermore you will need a function to check that current count in the ondeath function of the mobs which shall be dropping, and in perfection you will need to decrease that count in the OnAfterDelete function if a player would drop that Item and let it despawn or if it wouldn't be even looted. Also you will need to save your count in the Deserialization/Serialization method in GoblinCrown.cs. Good luck!
If you want that working for more items than one, you could write your own class (e.g. LimitedItems.cs) to handle that and combine it as a attachment in every limited item. But naturally I don't think you will get to your point with great performance, since you would need to scan every item on the shard for each drop. Example #1 is imho the easiest solution.