Hierarchical clustering for outlier detection - single cell RNASeq & WGCNA
For outlier identification I suggest using the sample network approach developed by Oldham et al. It basically amounts to constructing a inter-sample connectivity (assuming normalizedData contains the log-normalized data with genes in colunms and samples in rows)

k = colSums(cor(t(normalizedData))), 

scaling the connectivities 

Z.k = scale(k) 

and then removing samples with high negative Z.k (e.g. Z.k &lt; -4). 

A slightly different approach is based on euclidean distances rather than correlations, 

Z.k = scale(as.matrix(dist(normalizedData))) 

and removing samples with high positive Z.k (since distance is a measure of dissimilarity). 

Regarding the scale-free topology fit plot, I wouldn't worry about it too much, the fit index sometimes jumps around a bit. It certainly does not look like you have strong outliers or very heterogeneous data. But it is always a good idea to plot the sample clustering tree to check (1) that there are no strong clusters, and (2) that the outlier identification did something reasonable.