before i start... i'm not a parent.... but i was an 11 year old veggie kid once
when i was at school, i didn't have money for the school tuck shop very often, and i survived the huge social stigma of it. our tuckshop/canteen was full of junk too, so looking back, i'm glad i didn't have 'food' from it very much. in my case, my mum just didn't have the money to throw away on doughnuts and fries - £2 a day works out to nearly £400 over the school year- thats more than 10 pairs of school shoes (or 5 pairs of really swanky trainers)!
i don't think you should feel obliged to give your kid money for junk food if you don't want to... he'll just have to get over it, really. while you can't control what they choose to eat outside of your home, or their personal ethical choices to choose to eat veggie or not, you are within your rights to decide where your money goes- and if you don't want it going to the tuckshop, thats your perogative.
if he really wants tuckshop money, maybe he could get a part-time job (like a newspaper round) to fund it? i bet he'll want it less if it means getting up at 5am and dragging a bag of newspapers about, lol.
or perhaps you could negotiate on the issue, and suggest your saving the £2 a day instead, for spending on something better instead? it'll soon add up, at a tenner a week, and he could save to buy a bike or a computer with it, or go to the cinema on friday nights, buy some skateboarding (or whatever he's into) magazines, or rent a few random videos weekly with his mates, instead.
if his main concern is that his lunch isn't cool, or that he feels left out, maybe you could work with him on adapting his existing lunch a bit so that its more inline with what his friends take, but still healthy, as well as cool looking. seriously, whatever he thinks, he won't be the only person in the whole school with a packed lunch and no tuckshop money... not by a long run, and he will actually survive the experience.
as well as a few peanut butter and jam sandwiches, he could take pizza, potato wedges and dip, veggie nuggets and salsa, etc. you could add a few healthy cookies and muffins that look like tuckshop junk to the stuff he takes to school for lunch every day, too. you could even throw a veggie hotdog in a roll in there every once in a while.
also, you could work with the school to improve the state of the junkfood, or to at least get veggie versions of a few things on the menu- for everyones benefit.
i know that probably wasn't very helpful in the whole 'interpersonal communication with your child/parenting dynamics' sense of things... but i hope it helped a smidgen until someone who is good at that stuff shows up.