Solution 1 (Accepted):

This does what I want...

library(ggplot2)

# Load data file from current working directory:
data <- read.delim("data_example.txt",header=T,sep="\t")

data$conditions <- factor(data$conditions,levels=c("luciferase","HPV18 E6-E7","luciferase + Dox","HPV18 E6-E7 + Dox","HPV18 E6TTL-E7 + Dox","HPV18 E6-E7TTL + Dox"))

cbbPalette <- c("#000000", "#E69F00", "#56B4E9", "#009E73", "#F0E442", "#0072B2", "#D55E00", "#CC79A7")

ggplot(data, aes(conditions, fold)) + 
  geom_boxplot(outlier.size=0, width = 0.3) + 
  geom_dotplot( aes(fill=factor(repeats)),
                binaxis='y', 
                stackdir='center',
                alpha=1,
                dotsize=0.5) +
  ylab("fold E6*I mRNA level") +
  theme(axis.title.x=element_blank(),
        axis.title.y = element_text(face='bold',size=16,vjust=1),
        axis.text.x = element_text(face='bold',size=12,color='black',angle = 90, hjust = 1),
        axis.text.y = element_text(face='bold',size=14,color='black'),
        panel.grid.major = element_blank(), 
        panel.grid.minor = element_blank(),
        panel.background = element_blank(), 
        axis.line = element_line(colour = "black")) +
  scale_fill_manual(values=cbbPalette) +
  guides(fill=guide_legend(title="Biological repeats")) +
  scale_y_continuous(breaks = seq(0, 1.2, by = 0.2), expand = c(0, 0)) +
  geom_hline(yintercept=1, linetype="dashed", color = "red")

enter image description here