It returning a bound method should be a huge hint to you: it's a method, not a value. You typically invoke methods to get it to do its work, so what you're missing is calling it.
@user_passes_test(lambda u: u.profile.account_verified)
This test passes if the lambda function returns a bool(function_result) of true: in the case of a method, it's always true.
What you want is to call the method and have it return a true or false
@user_passes_test(lambda u: u.profile.account_verified())
Or if you want the method to be a property, decorate the method with @property
@property
def account_verified(self):
Now it's a property, and you don't need to call it.