Item frames that have the "Fixed" data tag set to 1b do not take damage when placed below y -64.
Reproduction:
Spawn an item frame with the Fixed tag set to 1, and give it an entity tag to test with.
/summon item_frame ~ ~ ~ {Fixed:1b,Tags:[test]
}Teleport the item frame to any y coordinate below -64.
/teleport @e[type=item_frame,tag=test] ~ -70 ~
Execute as the item frame to ensure that it still exists.
/execute as @e[type=item_frame,tag=test] run say test
Related issues
Comments

Can reproduce. This is inconsistent with area effect clouds and marker armor stands.