I have a solution. Scale the xp reward based on time required to complete the dungeon up to 30 minutes. If the dungeon takes 30 minutes, you get 100% of the xp. if it takes 15 minutes, you get 50% of the xp. So if you get a tank that pulls small and takes 30 minutes, you will be compensated with more xp. No more complaining.