Buenos días si hacemos echo 'HOLA1 tenemos '.count($tablaJugadores[$x]).'<br/>';
Comprobamos que nos devuelve HOLA1 tenemos 0, es decir, no te está devolviendo lo que tú esperas que te devuelva.
El motivo es que aunque podríamos esperar que los índices funcionaran, siguiendo el orden de declaración, php no considera esta opción como válida. Para recorrer un array asociativo debes usar un bucle foreach, ver
https://www.aprenderaprogramar.com/foros/index.php?topic=1350.0Para tratar de asimilar esto podemos considerar que los arrays asociativos en php son considerados conjuntos de elementos clave-valor no ordenados, es decir,
$jugador['delantero']['manchester'] no tendría ningún orden frente a $jugador['defensa']['chelsea']
php no sabe cómo ordenar y trabaja con estos elementos como sin orden intrínseco, al contrario que los arrays numéricos donde el orden viene determinado por el valor de los índices
En resumen: con arrays asociativos hay que usar foreach
Saludos