You can create a wrapper function in the non-current database like so:
create function ObjectProperty(@objId int, @property varchar(20)) returns int as begin
--Because ObjectProperty runs in the context of the current DB, we need a wrapper function in the DB we want it to run in the context of.
return objectproperty(@objId, @property)
end
Then, instead of calling ObjectProperty(...), call dbname.dbo.ObjectProperty(...).
This should work.