Veja se seria algo assim

library(reshape2)
library(ggplot2)
library(dplyr)

t <- read.delim('teste.txt')

t1 <- t[,c(1,seq(2,ncol(t),2))] 
t2 <- t[,c(1,seq(3,ncol(t),2))]

t1l <- melt(t1, idvar = 'gene')
colnames(t1l)[3] <- 'exprs'
t2l <- melt(t2, idvar = 'gene')
colnames(t2l)[3] <- 'percentage'
tl <- left_join(t1l, t2l, by='gene')

ggplot(data = tl, aes(x=gene, y=exprs)) + geom_point(aes(color=percentage)) + scale_color_gradient2(midpoint=mean(tl$percentage), low="blue", mid="white", high="red", space ="Lab" ) + theme_classic()