In general, nearly any game is better/fun with co-op if you've got friends with a sense of humour. One exception I glaringly remember is Gears of War.
Otherwise, from my experience:
SWAT 4 - plain fun to play. Especially due to the unpredictable AI.
Rainbow Six up to Raven Shield - funny to play, if only due to AI bugs. Having a friend that gets frustrated by these things helps as well.

Mercenaries 2 - brainless but fun. Also hillarious due to whatever misfortunes happen to the other player(s) (watching someone keep trying to get through a QTE to hijack a tank only to keep getting kicked off by the tank driver never gets old).

Resident Evil 5 - 2 players only, pretty fun to play through cooperatively. Heard it's pretty unplayable otherwise due to companion AI, so it's sort of the right way to play it.
Hidden and Dangerous 2 with expansion pack - besides the brainless "kill them all" missions, fun. I think it also required a mod to make non-expansion pack missions playable on coop.
R6 Vegas 1 and 2 - utterly brainless, but somewhat enjoyable coop. Shield + deagle - hillariously overpowered, yet kind of useful in coop due to strange spawn system (as long as one player is alive, the other can respawn, otherwise it's back to map start).
Build engine games (Duke 3D, Blood, Shadow Warrior) - If only because 2+ heads are better than 1 when searching for key cards. The misunderstandings and misuse of the shrink gun lead to many hillarious situations in Duke 3D, too. Front-ends/ports recommended to get them working via hamachi.
NWN2 - if only to laugh at the hillarious dialogue and how tacked on the second player is (like the 1vs1 + 1 storyline duel).
Splinter Cell Chaos Theory - was pretty fun up to about half way through. Too samey gameplay. And the levels are pretty painfully strictly made for two players (no exit from the starting point unless there's another person to hoist the other up).