Can I apply Dropout In layers other than Fully Connected layers in CNN
In a CNN, each neuron produces one feature map. Since spatial dropout which is normally used for CNN's is per-neuron, dropping a neuron means that the corresponding feature map is dropped.
Pooling usually operates separately on each feature map, so it should not make any difference if you apply dropout before or after pooling.
Yes it should help with preventing overfitting. The added advantage is you can get uncertainty from the network at zero cost if using dropout.