I had a VSD and while I don't remember life before having a scar on my chest so couldn't tell you if it hurt (but do remember my 2nd surgery around 3 y/o, and getting the stitches taken out of my chest -- kind cool [I got a balloon afterward! ;-)]), my mom says I was always such a happy child, and rarely fussed, even post-op or during medical procedures. So, fwiw, this VSD child didn't seem to hurt.
I do have lactose intolerance -- I can tolerate *some* quantity of milk/cheese, etc., but too much and I get a **horrible** stomachache, and often get diarrhea. Usually, once it's out of my system, I'm fine, but sometimes even though there are no apparent "outside" symptoms, my stomach **hurts**, and I'm not good. I'd be more willing to blame some food allergy/intolerance than the VSD.
He's 2 y/o -- can he tell you where it hurts? That may help you pinpoint the problem. If he feels the pain in his chest, then I'd be more likely to blame the VSD, but if the pain is in his belly, I'd blame food.