You can have a tailor put a small piece of rubberized grippy material on the inside of your pant waist. Most of my higher end suit pants have that and it keeps shirts from riding up too easily. Not foolproof but works decently well.
http://i.imgur.com/4SyZxwi.jpg
Looks like that but not as big.