O que você está basicamente mostrando é que você tem um problema de design em seu modelo, onde parece que a escolha errada foi feita ao implementar super/subtipos. Seu requisito funcional é ter dados (simulares) de duas tabelas diferentes como um conjunto uniforme. Isso seria simples se todas essas linhas estivessem em uma tabela. Então a verdadeira questão é por que eles não são.
Você ainda pode obter essa consulta mais rápido (suponho), mas é feio.
SELECT * FROM
(SELECT * FROM (select title, id, date as date_added from test1
ORDER BY date_added DESC LIMIT 0,8) t1
UNION ALL
SELECT * FROM (select title, customer as id, date_added from test2
ORDER BY date_added DESC LIMIT 0,8) t2
) joined
ORDER BY date_added DESC
LIMIT 0,8