This is probably too late for Nishkar's issue, but might be useful to someone else.
As John said, you can't change message properties once it's sent. So if you need something like this only solution is to use one more intermediary queue where you would read messages, modify whatever you want and send them to original destination queue. Since this is simple processing it should work quickly and not hit your 30-min time to be received. One thing to note is that final message will not be identical to original one. Apart from these properties you change, MSMQ will also set new message ID, sent time, etc.
It's an extra step but could be a solution if you don't have any other way.