Bom dia Júlio, tudo bem? Espero que sim!
O que está acontecendo é que a sua média está sendo calculada enquanto está adicionando os produtos, então ainda que tenha 1, 2 ou 3 produtos a sua média está dividindo a soma desses itens e dividindo por 10.
Assim, mesmo que o produto esteja abaixo do preço médio final, ele não estava abaixo do preço médio que havia sido calculado dentro do for e por isso não foi adicionado na lista.
Além disso o seu cont = 0 e o input sempre mostra na tela cont +1, e acaba sendo mostrado "Digite o preço do produto 1". Refatorei o seu código para que os produtos sejam adicionados conforme a média atual e consertando o número do produto que está sendo adicionado:
Repare que não precisa converter para str o input do nome do produto, uma vez que o input já pega o valor em formato de string
soma = 0
media = 0
prod = []
contando = []
lista_principal = []
for p in range(10):
prod.append(input(f'Digite o nome do produto {p + 1}: '))
prod.append(float(input('Digite seu preço : R$ ')))
soma = soma + prod[1]
media = soma / (p+1)
if prod[1] <= media:
contando.append(prod[0])
lista_principal.append(prod[:])
prod.clear()
print(f'A soma de todos os produtos é R${soma:.2f}')
print(f'Sendo assim .. A média dos produtos é R${media:.2f}')
print(f'Os produtos abaixo da média são: {contando}')
Mas imagino que você queira comparar a média global e não a média atual de cada iteração, nesse caso o código fica um pouco diferente, há várias maneiras de fazer mas vou deixar uma que utilizei como solução, não quer dizer que seja a melhor:
soma = 0
media = 0
prod_nome = []
prod_preco = []
contando = []
lista_principal = []
for p in range(10):
prod_nome.append(input(f'Digite o nome do produto {p + 1}: '))
prod_preco.append(float(input('Digite seu preço : R$ ')))
soma = sum(prod_preco)
media = soma / 10
for indice, preco in enumerate(prod_preco):
if preco <= media:
contando.append(prod_nome[indice])
for i in range(10):
produto = (prod_nome[i], prod_preco[i])
lista_principal.append(produto)
print(f'A soma de todos os produtos é R${soma:.2f}')
print(f'Sendo assim .. A média dos produtos é R${media:.2f}')
print(f'Os produtos abaixo da média são: {contando}')
print(f'A lista de todos os produtos é: {lista_principal}')
Espero que tenha tirado sua dúvida.
Estou à disposição. Bons estudos!