Beh, nel modo da te postato, l'istruzione IF lavora se è settata la variabile $_GET['lang'], per questo ti si de-setta subito dopo.
Io lavorerei maggiormente su questo ragionamento (da applicare alla tua applicazione):
codice:
$_SESSION['lang'] = $_GET['lang'];

if ($_SESSION['lang'] == 'EN') {
      $sitoininglese;
} elseif ($_SESSION['lang'] == 'FR') {
      $sitoinfrancese;
} elseif ($_SESSION['lang'] == 'ES') {
      $sitoinspagnolo;
} else {
      echo 'Seleziona una lingua';
}
Oppure, ancora meglio, usare l'istruzione SWITCH:
codice:
$_SESSION['lang'] = $_GET['lang'];

switch ($_SESSION['lang']) {
      case 'EN':
      $sitoininglese;
      break;

      case 'FR':
      $sitoinfrancese;
      break;

      case 'ES':
      $sitoinspagnolo;
      break;

      default:
      echo 'Seleziona una lingua';
}
p.s.
di solito, la lingua di un sito, è sempre meglio gestirla con i cookie per non dover chiedere all'utente ogni volta di scegliere la lingua.