Oh, i see the problem.
You're right, probably gridmove is starting after Ultramon and causing that.
On a recent version, gridmove had the ability to detect these situations and reload itself, but that caused serious trouble with some people, and i left that on hold to be reintroduced when i test it with my second monitor. (in about 2-3weeks, because right now i'm at my parents').
Right now, the solution i'd recommend would be that you use
startup delayer which allows you to delay the start of some programs at windows startup.
[edit] bah... I enabled that detection and compiled a new version and attached it to this post. I just hope you won't have the problems other people had [/edit]