Your exposed property is a class reference and not an object reference. I think this is why your type cast fails.
Can you try the following code?
//In your header file
UPROPERTY(EditAnywhere)
TSubclassOf<class UItem> Item;
//To access the heal amount
if(Item)
{
float HealAmount = Item->GetDefaultObject<UItem>()->HealAmount;
}