Немного улучшил ситуацию. В базовой дропзоне использовал функцию - заглушку:
isPositionValid: function(overRecord, draggingRecords, pos){
		var 
			me = this,
			valid = !Ext.Array.contains(draggingRecords, overRecord) &&
  			( pos === 'before' && !me.containsRecordAtOffset(draggingRecords, overRecord, -1) ||
					pos === 'after' && !me.containsRecordAtOffset(draggingRecords, overRecord, 1)
				);
		// some additional validation here
		return valid && me.validateExtended(overRecord, draggingRecords, pos);
  },
  
  // must be re-defined in shildren
  validateExtended: function(overRecord, draggingRecords, pos){
  	return true;
  },
При подключении плагина заглушку переписываю:
plugins: {
	ptype: 'gridviewdragdrop',
	dragText: '## Drag and drop to reorganize',
	dropZone: {
		validateExtended: function(overRecord, draggingRecords, pos){
			// disable draggind to other parent grous
	  	return overRecord.get('SafetyRoundMeasurePoint_ID') == draggingRecords[0].get('SafetyRoundMeasurePoint_ID');
	  }
	}
},
Так все выглядит лучше, но некоторая засада имеет место по прежнему. Если вдруг обновится фреймворк, и метод 
positionIndicator будет переписан, то может выйти бяка. Кроме того, остался открытым вопрос о драг тексте: как можно его менять динамически?