EDIT: Re-reading the question it sounds like you want the whole row, not just the ID.
To get the full row, you can use a CTE;
WITH cte AS (
SELECT *, ROW_NUMBER() OVER (ORDER BY start_time,id DESC) rn
FROM match
WHERE home = 1585
AND start_time < '2013-04-06'
AND match_score[1] > match_score[2]
)
SELECT "id", "league", "home", "away", "start_time", "match_score"
FROM cte WHERE rn=1;