Is it possible and/or wise to put both View Models and DTOs inside a separate project?
Yes, it is possible, however, it might not be the right separation. View models usually are bound to the View, so they would usually stay closer to the View than the Model. I'm not sure what role your DTOs are playing here, but you want to ask yourself what concern (M,V or C) owns them and then group them there.
If so, can I also put my model queries inside this separate assembly?
Based on your example, placing the Model and your model queries in a separate assembly seems sensible. I have seen the Model separated into a new project many times. It doesn't make sense always to package the Model in the same assembly as your controllers or view for exactly the reasons you are stating in your question.
Namely, you usually want to use your Model (where the core business logic exists) for more than one UI.