I have never actually caught a foul ball at a pro game, however I have acumulated a lot of memorabilia (balls, hats, bats mostly)from pro baseball games.
There are two ways we have been able to get so much stuff. Back in the early 80's when nobody went to Indians games, we would sit out by the bullpen (usually the visitors) and bullshit with the players all the time. They are almost always very cool if you are not an obnoxious asshole to the. Usually by the end of the game if we got along with them they would give us a few balls, or a batting glove or something. On some occasions there would be some bargaining going on. More than once we went and got hot dogs ( these guys actually have money on them in their uniforms) for them, and they would get us bats, one of my buddies even got an orioles warmup jacket one time.
The other way was at Wrigley field mid 90's. My friends architect firm had seats three rows off the wall right between the dugout and the backstop fence. The on-deck circle was literally 10 feet from us. By late in the season when nobody cared anymore you could sit there and bullshit with the guys in the on deck circle. We used to make up stories about sick nephews or relatives, give them one of our customers names and have them pass a ball or something around the dugout. They would do it all the time. We would then give the bat or ball to one of our customers and they would go crazy. Best customer retention program my company ever had.