The main issue with giving a buff based on blueprints known is how easy they are to acquire.
Blueprint packs are how you get the vast majority of them, and they're so common it's not unusual to find multiples of them into double-figures.
Single prints are elusive enough that its not so much of an issue.
It comes down to what you want this buff to be...
Something big like the global maint. savings etc. would need prints to be much harder to find than they already are in order to not quickly trivialise logistics.
Something small enough to not care about the player having every print (and every buff), is also small enough for the player to not really care about
it either.
Another avenue to consider is just straight up
ignoring packages.
Only single prints give buffs.
That way you avoid the (lack of) rarity issue, and now there's always value to finding a single print.
Alternatively,
Spoiler
randomise the buff given by knowing a print. Almost any ship stat could be adjusted (probably not burn or DP).
You'd have to set this up to allocate which prints get which buff during sector-gen so savescumming makes no difference.
But you could have every game giving different buffs to different ships.
You'd definitely want to split up or ignore the packs for this though...