Australia defied controversy to hold off a resurgent England on a classic final day of the second Ashes Test at Lord’s.