Realmente essas palavras são bastante confusas pelos sinônimos utilizados em frases parecidas. Mas também há uma ou outra diferença.
"SOBRE" e 'EM CIMA DE" são exatamente a mesma coisa quando se refere a algo como "as roupas estão sobre/em cima da cama". Porém, SOBRE também significa falar/escrever algo, como "este livro é SOBRE receitas."
"ACIMA" não é a mesma coisa que "EM CIMA DE". "ACIMA" é algo mais superior ou mais alto. "O supervisor está ACIMA da atendente" significa que ele tem um 'poder' maior de decisão. Já em "aqueles livros estão ACIMA daquelas roupas"- que já estão em cima da cama - significa que eles estão em um lugar ainda mais alto que as roupas. Se for apenas uma coisa, não se deve usar "ACIMA" como "os livros estão acima da cama", é mais uma questão de concordância e deixar a frase mais "limpa e formal"
"EM" refere-se a lugar, mas não como "em cima de algo". EM pode ser somada com A ou O, transfornando a palavra em "NA" e "NO". É uma palavra usada como "ela está EM casa", ou "ele está NO (em + o) trabalho.
Agora vamos para as outras palavras relacionadas;
SOB e EMBAIXO são exatamente os antônimos de SOBRE e EM CIMA: "A mala está SOBRE a cama' refere-se que está em cima da mesma. "A mala está SOB a cama" significa que está embaixo dela.
Já "ABAIXO" seria o contrário se "ACIMA": "aquele estagiário está abaixo do novo contratado". Porém, também significa que algo/objeto está em um nível mais baixo que outro e, por concordância, fica melhor utilizar o termo "EMBAIXO".
DEBAIXO é também sinônimo de EMBAIXO: "a toalha está DEBAIXO" das roupas. Porém, DEBAIXO, a meu ver é uma palavra mais comum/social e EMBAIXO eu já considero mais formal. Depende muito do contexto da frase.
ACIMA e ABAIXO também podem referir-se a valores: "o valor do arroz está ACIMA do normal."
Espero ter ajudado.