LIMIT apenas interrompe o número de resultados que a instrução retorna. O que você está procurando geralmente é chamado de funções analíticas/de janela/ranking - que o MySQL não suporta, mas você pode emular usando variáveis:
SELECT x.*
FROM (SELECT t.*,
CASE
WHEN @category != t.category THEN @rownum := 1
ELSE @rownum := @rownum + 1
END AS rank,
@category := t.category AS var_category
FROM TBL_ARTIKUJT t
JOIN (SELECT @rownum := NULL, @category := '') r
ORDER BY t.category) x
WHERE x.rank <= 3
Se você não alterar
SELECT x.*
, o conjunto de resultados incluirá o rank
e var_category
valores - você terá que especificar as colunas que você realmente deseja se esse não for o caso.