How do I change material properties?

The constructors of UObject classes get run at times you might not expect – when the editor starts up, when the game first starts up, etc. Not all of the engine resources (or properties on your class) will be available or valid at that time. You might want to try setting the material property by overriding BeginPlay() on your AActor subclass. (There are also other places you can override – try PostInitializeComponents too, if you want to see it reflected in the editor interactively, I think).