Retrieving and Refining: A Hybrid Framework with Large Language Models for Rare Disease Identification