O objetivo de uma função de agregação (e o GROUP BY que ela requer) é transformar muitas linhas em uma única linha. Então, se você realmente quer apenas as 5 principais contas de poupança e as 5 principais contas correntes e as 5 principais contas em dólares etc., o que você precisa é mais assim:
critérios:top 5 de um tipo de conta específico por account_balance
SELECT account_type, account_balance FROM accounts WHERE account_type='savings'
ORDER BY account_balance DESC LIMIT 5
UNION
SELECT account_type, account_balance FROM accounts WHERE account_type='chequing'
ORDER BY account_balance DESC LIMIT 5
UNION
SELECT account_type, account_balance FROM accounts WHERE account_type='USD'
ORDER BY account_balance DESC LIMIT 5;
Não é bonito, mas se você construir o SQL com um script, então inserir o account_types e concatenar uma consulta é simples.