Specifically, a call to (org-end-of-meta-data t) with point at the > on the following tree will go all the way to the next heading.
In contrast, a call to just (org-end-of-meta-data), without the FULL flag, will go to the beginning of heading content, as expected.
* >heading


* another heading


The issue arises from the code for skipping clock lines, which does so by checking if point is looking at (concat "[ \t]*$" "\\|" org-clock-line-re).
I'm not sure of the intention of the first alternative, the "[ \t]*$", but it matches an empty line, and so the loop advances point to the next line, until reaching the next heading in the case above.
Removing that from the regexp appears to fix the issue.

If this change is fine, then I am happy to provide a patch.
Thanks,
Ben