Ahh, I think I know why. The Garmin system is likely not DO-260B ADS-B out compliant and is not getting the ground stations to be active. Your airplane is lighting up the ground stations, which gets them to send out traffic. He's getting lucky and seeing all those targets because you turned the system on for him. If you weren't there, he'd see nothing.
The one target ADS-B won't send out is the one airplane it knows is listening, which is you. It figures that you have no reason to see yourself as a target, so it doesn't send you out, so he can't see you. It will only send you out if it knows another plane is around to listen, which requires that plane to be ADS-B OUT equipped and up to date with the regs.
To prove this, you could try turning your transponder off for 30 or more seconds and I bet all his traffic would go away.
This is all likely true because Garmin has only had DO-260B in their mode-S transponders for a few weeks now, so unless he has had the firmware updated, it isn't up to date. Also, if this is a G3X system, he'd need to have a certified GPS wired to his transponder, and it would need to be running firmware from about 2 months ago or newer as well. All of this needs to be done by a Garmin dealer.
In the end though, this sounds like a question for Garmin, not us. ADS-B traffic is a complex thing, and they could easily be filtering you out for some reason even if they did see you. Your buddy also needs to talk to them about the system he bought and find out what it is and isn't capable of before you think it has anything to do with your plane or avionics.
Remember, in a fully compliant ADS-B system, you can see every plane ATC can, no matter what equipment they have on board, so he should be able to see you even with your transponder off if you are in a radar area (indicated by "ADS-B full" on a SkyView when you transponder is on)