Ja, reservieren ist Pflicht! Du reist zur absoluten High-High-Season, zu der die Unterkünfte die Preise teilweise grad mal verdoppeln.
Wenn es noch irgendwie was nettes sein soll, ist unter 50 nicht viel zu machen, für ein wirklich stimmungsvolles Riad in Marrakesch musst Du mindestens das 2-3fache hinlegen.

Ich würd nich zu lange für Essaouira einplanen. Ich hab im Juni abends schon gefröstelt, und im Winter stelle ich es mir in einem einfachen Riad ohne Heizung bei dem feuchten Klima nicht so angenehm vor. Ausserdem ist die Stadt zwar sehr schön, aber wird schnell langweilig, wenn es am Strand zu kalt ist. Man kann sonst nicht viel machen.

Du kannst direkt bei den Riads reservieren. Es gibt z.B. http://www.hipmarrakech.com, eine Seite mit englischsprachigen Riads.