"I sleep for several hours."
Translation:Jag sover i flera timmar.
From an English-speaker's perspective, sure, Swedish "seemingly randomly uses different conjunctions and prepositions", but what I'm trying to say is that surely from a Swedish-speaker's perspective, English conjunctions and prepositions are just as random. And yes, I think we get used to our own prepositions and think of them as the 'right' ones even though they're arbitrary!
På flera timmar is a correct expression, but it does not fit here. You can use it in sentences like this:
Jag har inte sett henne på flera timmar 'I have not seen her for several hours'
en försening på flera timmar 'a delay of several hours'.
på with time expressions is also often used to say how much someone was able to accomplish during a certain period of time, but that doesn't fit here either.
We very often use present tense to speak about future, so I think generally all verbs can be used that way, although with this verb I think it would be hard to do without some kind of adverbial that indicates it is indeed future. But you can definitely say stuff like Jag sover mellan 4 och 6 i eftermiddag så ring inte då 'I'm sleeping between 4 and 6 this afternoon so don't call me then'.
Often there are no difference, but sometimes the "i" suggests "in a row". "Jag jobbade tre dagar förra veckan" (I worked three days previous week) could easily refer to e.g. monday, thursday and sunday. While "Jag jobbade i tre dagar förra veckan" suggest that it was during three days in a row. You can not rely on this distinction, but it is a hint.
See answers above - although I realise there might be a bug on some platforms where previous comments are not visible. To quote Arnauti's previous answer: "om with time expressions means after, so Jag sover om flera timmar would be I will sleep in several hours as in, several hours later than now."