When creating or modifying a Wikibase Entity, Partial Blocks are enforced as if they were sitewide blocks. Without fixing this problem, Partial Blocks do not work on Wikidata.
SpecialWikibasePage::checkBlocked needs to be updated to use User::isBlockedFrom() with the title of the page in order to determine if the user can create or edit the entity. The full title should be passed into that method (i.e. Q2 or Property:P18).
For entity creation, use User::getBlock()->appliesToNamespace() to check if the user is blocked from the namespace the creation is happening in.
As for edits through the API, these block checks are already handled via the edit actions an EditEntityAction -> Action.php in core. So nothing to do there (according to @Addshore ...)