I have a similar issue with this and my daugher - we did not have this problem with giffgaff but the only way I could do it was to ask Virgin to remove access to the data completely. Wish it was simpler. Also capping the credit limit on the account.
The credit cap limit is set quite high and turning off mobile data completely is a bit excessive. Other providers can put in data usage caps so why not VM? I've been with VM for many years but this issue will force me to leave.