Nah, bastaria con probar la url como:
dominio.com/Experimento/contacto/7'/">/9
Y ver que sucede =P
No creo que esta sea una manera real de evitar el posible problema, lo mejor siempre ha sido y seguirá siendo el validar y limpiar todo valor que un usuario envie.
Lo de enviar variables por POST como dijeron arriba es lo mismo.. nada me impide cambiarle el valor a una de esas variables.
Y de hecho, lo que es peor, es lo que pones de el .htaccess con el handler de php.. si no lo cuidas estarias diciendo que practicamente cualquier archivo en el directorio debe ser interpretado como un archivo php, y eso es malisimo tratandose de seguridad.
En resumen: valida, limpia.
Código PHP:
$variable_a_usar_en_sql = isset($_GET['variable']) ? mysql_real_escape_string($_GET['variable']) : null ;
$variable_a_mostrar_en_sitio = isset($_GET['var']) ? htmlspecialchars($_GET['var']) ? '' ;
Son validaciones por demas simples, pero que ejemplifican un poco como debe hacerse.