Is there a way to not allow global resources to be edited in the child project? in particular, Vision Window that are in the global project.
Nope. But you could detect that it happened by scanning the gateway filesystem. Perhaps including such in a project library script.
Protecting the resource might be a sufficient workaround. That is, mark them as protected in the global project and ensure that designers in the child project don't have permissions to unprotect. I can't remember enough specifics to remember if that's anything more than a minor speedbump though.