Thousands rally against government in Cuba over food shortages and high prices