After close inspection of the exception you submitted, I think this is the problem.
most probably you're using some sort of reflection code (or opening a UI Dialog) in your ViewModel subscription handler that can only be executed when Silverlight runs in Full Trust Mode.
So when the URL of the silverilght application changes from something besides localhost (your dev server) , it doesn't run in Full Trust Mode anymore, that's why you get that exception.
You have to check if you're are executing any method call with the attribute [SecurityCritical]. If so and if you really need to execute that method than you have to run the Silverlight client in Full Trust mode (not recommended since this should only be feasible for intranet scenarios).
See this for more info
Hope it helps