Some causes of "dirty dots" of which I know (as of LabVIEW 2010):
1) Calling "system VIs": http://digital.ni.com/public.nsf/allkb/D4032A485C9F18C1862576D6007681F4
2) Opening a copied RT VI (i.e., in a new location on disk) with an FPGA VI reference (nondynamic).
3) A dirty dot appears in the project if you open a library (e.g., class library) where the contents are set to (Custom?) arrangement. Changing to Arrange by Name fixes this.
4) Changing a strict typedef in the private data of a class in one project may keep making you save a different project that uses the class. I usually make a trivial change (e.g., arrange horizontal then vertical again) to force a recompile. Then we're OK.
5) As Ben already mentioned, using autopopulating folders causes this a lot. We only use virtual folders anyway.
I'm not sure any of these apply in your situation.