Take a look at this Nettuts article and scroll down to the SQL Injection section. They recommend using addcslashes instead of mysql_real_escape_string to also escape the percent sign (%).
To solve your current problem: you are using the INSERT query wrong. SET is used in an UPDATE query. Your INSERT query should look like this:
$query = "INSERT INTO page (title, slug, breadcrumb, keywords, desc, content, parent_id, position)
VALUES ('$title', '$slug', '$breadcrumb', '$keywords', '$desc', '$content', '$parent_id', '$position')