El resultado que $p$ valores tienen una distribución uniforme en $H_0$ mantiene para la distribución continua de la estadística de prueba - al menos para el punto nulos, como la que tenemos aquí.
Como James Stanley menciona en los comentarios de la distribución de la estadística de prueba es discreto, por lo que el resultado no se aplica. Usted puede no tener errores en su código (aunque yo no mostrar una distribución discreta con un histograma, me iba a inclinarse hacia la visualización de la cdf o la fuerza, o mejor, ambas).
Mientras que en realidad no uniforme, cada salto en la cdf de la p-valor se lo lleva a la línea de $F(x)=x$ (no sé el nombre de este, pero debería tener un nombre, tal vez algo como "cuasi-uniforme"):
Es muy posible calcular esta distribución exactamente, en lugar de simular, pero he seguido su ejemplo y hacer una simulación (a pesar de que uno grande que tiene).
Tal distribución no tiene por qué haber media de 0.5, aunque como el $n$ en el binomio aumenta el paso de cdf se acercan a la línea más de cerca, y la media de la aproximación de 0.5.
Una de las implicaciones de la distinción de los valores de p es que sólo ciertos niveles de significación son alcanzables -- las que correspondan al paso alturas en la población real de cdf de los valores de p en la anulación. Así, por ejemplo, usted puede tener un $\alpha$ cerca de 0.056 o cerca de 0.04, pero no nada más a 0.05.