I think you're confusing things a bit. The difference you are seeing is because of the session type, not anything the V2 module introduces. More specifically, if you want the full object returned, you need to use implicit remoting.
Here's an example that will work just fine in V2:
(Invoke-Command -Session (Get-PSSession) -ScriptBlock {Get-Mailbox shared | Select-Object -ExpandProperty ExchangeSecurityDescriptor}).DiscretionaryAcl.Count
The REST based cmdlets will always return a string instead of the object, no workarounds there.