Put the check in the join instead of the where clause like:
SELECT products.*, downloadproductjoin.*, download.* FROM products LEFT OUTER JOIN downloadproductjoin ON products.ProductID = downloadproductjoin.JoinProductID LEFT OUTER JOIN download ON downloadproductjoin.JoinDownloadID = download.DownloadID AND download.Live = 1 WHERE products.ProdPermalink = ? AND products.ProductLive = 1