for example, a lv17 Roselia may give 200 exp, then the same level wooper may give 150 . This is under the assumption that I'm using no items, the same pokemon and at the same level? Why is this? Which pokemon would give off the most experience?

Because Wooper and Roselia have different Base EXP stats: Wooper has a base 50. Roselia has a base 152.

AUDINO will give the most: Base 390.