One thing you'll see work better is playing with lengths and volumes strategically. If a regular shirt makes you look like you're swimming in your clothes, try tucking it in partially at the front - like just at the center or on one side - it's not sloppy, it's a styling choice. Or go straight to shorter tops, crop tops, or tank tops: the contrast between giant pants and a more defined upper body completely changes how the fit comes across.
What you're getting wrong - and what you don't see emphasized much - is trying to balance everything. A lot of people think "loose pants = I need to make everything fitted" and end up with a combo that looks like two different outfits thrown together. Real balance is letting the cargo dominate in its hugeness and creating focal points up top: an oversized shirt but tied up, a sweater that hits mid-thigh, even a cropped jacket. That way you're not fighting the volume, you're playing with it.
As for shoes, go for something chunky or heavy - sneakers, boots, chunky loafers - because if you wear something thin, visually the pant eats up even more space. And one last thing: the hem. If they're too long, cuff them slightly instead of letting the fabric drag, otherwise it genuinely looks like you borrowed them from someone two sizes bigger.