Hey Alex,
The option as per my understanding is customization.
Yes on Documents like sales & Purchase you have a field called No. printed but its not provide the count of print based on user. It is just the count of times a document get printed.
So in your case what I think the customization is -
1) Create a New Table with Fields Report ID and User ID. (Both Should be part of primary key)
2) In CodeUnit 1 , Function FindPrinter - Check the Record in this table if Exist then provide an error else execute the Standard Logic.
3) In every Report That you want to have this feature - Add code on - OnPostReport Trigger to Insert Data into the New Created Table.
Let me know if you have any further queries.