The compressed indicator is stored in the "attributes" property. This Powershell will report compressed files.
gci -r C:\search\path | where {$_.attributes -match "compressed"} | foreach { $_.fullname }
-- Begin Edit
The file size is stored in the length property, which is in bytes. You can use whats called a "calculated property" to display the size in kb,mb,gb, etc.
$col1 = @{label="Size";Expression={$_.length/1mb};FormatString="0.0";alignment="right"}
$col2 = @{label="Fullname";Expression={$_.fullname};alignment="left"}
gci -r | where {$_.attributes -match "compressed"} | ft $col1,$col2 -autosize
If you want only larger files, say greater than 1MB
gci -r | where {$_.attributes -match "compressed" -AND $_.length -gt 1mb} | ft $col1,$col2 -autosize
Folder size is also possible, a slightly different beast.
Just try google'ing "powershell folder size" lots of posts on how to do that.
There are also many free tools (windirstat) to report folder sizes.