Hi Miroslav,
The restriction of being able to update extension attributes (OnPremisesExtensionAttributes) via the Graph API applies also to objects created in Exchange Online. Even if the user doesn't have a mailbox, he can be a valid Exchange recipient (i.e. a MailUser), in which case you must use the Exchange cmdlets. To verify the user's status in Exchange, you can run the Get-Recipient or Get-User cmdlet.
Basically, if the user in question does not show in the output of the Get-Recipient cmdlet, you will be able to change the extension attributes via Graph. If it does, use the corresponding Exchange cmdlet (Set-Mailbox, Set-MailUser, etc).
Another way to check is via the Get-User cmdlet, by filtering based on the RecipientTypeDetails value of "User":
Get-User -RecipientTypeDetails User
Every user returned by the above should be OK to manage via Graph.