Hoops.. c'è un problema basilare che mi era sfuggito.
Tieni presente che è un problema riguardante PHP e non JS (siamo quindi un po' offtopic ma ti spiego lo stesso).

In effetti con include non stai "caricando" la pagina ma stai semplicemente dicendo di "appiccicare", all'interno dello script chiamante, lo script contenuto in quella specifica pagina.
Le variabili passate in GET o in POST vengono di norma create nell'header della pagina al momento in cui questa viene "caricata" sul browser.
Nel caso di include non stai "caricando" la pagina e pertanto non puoi passare alcun parametro in quel modo (GET o POST che sia).
Puoi però "definire" le variabili, in modo anche più semplice, direttamente nello script della pagina load_page.php da cui lanci l'include. Queste variabili saranno quindi visibili automaticamente sullo script della pagina "inclusa".

Come sempre puoi risolvere in vari modi.
Io ti consiglierei di passare le variabili supplementari, nel primo passaggio (ajax => load_page.php), concatenandole direttamente sulla proprietà "data" (proprio come ho invece evitato di fare nel primo esempio, per risolvere il problema del MIME).

Avrai quindi una cosa del genere:
codice:
function loadPage(data)
{
	data='page='+data.replace('#','').replace('?','&');

	$.ajax({
		type: "POST",
		url: "load_page.php",
		data: data,
		dataType: "html",	
		success: function(msg){
			if(parseInt(msg)!=0)	//if no errors
			{
				$('#pageContent').html(msg);
			}
		}
	});
}
Ho sostituito la variabile "url" con "data" per un puro fatto di intellegibilità.
La funzione replace('?','&') non farà altro che agganciare le variabili aggiuntive direttamente alla variabile "page".

Teoricamente potresti fare a meno di questo passaggio se ti poni la convenzione di indicare, sui link, direttamente il carattere & (e commerciale) anziché ? (punto interrogativo). Potresti ad esempio avere una cosa del genere: "#profile&user=prova". Ovviamente vedi tu come meglio preferisci operare.

A questo punto, su $_POST in php, ritroverai la tua variabile "page", che conterrà il nome della pagina, e tutte le altre eventuali variabili aggiuntive.

load_page.php potrà quindi tornare nella sua forma iniziale senza apportare nessuna modifica:
Codice PHP:
<?php
if(!$_POST['page']) die("0");
$page $_POST['page'];
include(
'pages/'.$page.'.php');
?>
Nel caso di "#profile?user=prova" potrai accedere alla variabile $_POST['user'] direttamente dallo script all'interno di quella stessa pagina.

Analogamente nel caso di più variabili potrai accedere a queste sempre via POST.
Ad es: "#profile?user=prova&pw=123&id=10", avrai rispettivamente $_POST['page'], $_POST['user'], $_POST['pw'], $_POST['id']


Non ho testato lo script, spero funzioni.
La soluzione (se funziona) era comunque più semplice del previsto.