tyrula, esto se debe a que por defecto los servidores tienen configurado lo que se llama una "máscara" de permisos que se aplica "restando" sobre los permisos que vos definís.
En general el umask es de 022, lo que quiere decir que un permiso 777 se transforma en 777-022 = 755, que es lo que estás teniendo como resultado.
Podés definir umask por defecto antes de hacer tus mkdir, mediante una llamada a "umask(0);"
Más info en:
http://www.php.net/manual/en/function.umask.php
Saludos!