Take a look at this example from the docs:
http://docs.sencha.com/extjs/4.2.2/extjs-build/examples/tree/custom-drop-logic.html
Basically it uses nodedragover
event to control when one can drop or not.
Return false when you don't want to allow the drop.
As far as making it copy instead of cutting, the documentation mentions the following (although I've never tried it myself):
This plugin provides drag and/or drop functionality for a TreeView.
It creates a specialized instance of DragZone which knows how to drag out of a TreeView and loads the data object which is passed to a cooperating DragZone's methods with the following properties:
copy : Boolean
The value of the TreeView's copy property, or true if the TreeView was configured with allowCopy: true and the control key was pressed when the drag operation was begun.
Try setting copy: true
to the two views.