There's not really a 'freeze value' function in vitacheat. You can hack the number of items and put it at something low, like only 5 or so instead of 99. The only other thing I can think of is a conditional code that only hacks the value if you have less than 5 or so items, but still lets you collect more.
Code:
$DB01 81001337 00000005
$0200 81001337 00000005
It's a bit more complicated if you have a pointer involved, but still possible.
Code:
#Copy Original value from pointer
$8201 81001337 00000010
$8800 00000000 00000000
#Paste Value somewhere useful (no need to put an offset)
$8601 82000000 00000000
$8900 00000000 00000000
#Check if Pasted value is less than 5
$DB02 82000000 00000005
#Write 5 continuously until more items have been collected.
$3201 81001337 00000010
$3300 00000000 00000005