as always, the means to suppress aggregation crucially depend on the properties of your protein. Adding salt so prevent protein/protein-interaction is usually a good idea ("salting-in-effect"). Too much salt however will again "salt-out" the protein, by preferred interaction of water with the salt ions.
I have experienced good results by adding arginine or glutamate in mM concentrations.
Trehalose, betain, ectoin, sucrose, sorbitol and other sugar-alcohols are used to prevent aggregation in concentrations up to 4 M. Which best solubilizes your special protein must be determined empirically, I'm afraid.
Have a look into this paper:
http://aem.asm.org/content/77/13/4603.full
There is also the new (and to mind, rather plausible) hypothesis that proteins more likely aggregate during cell lysis, not during expression itself:
Thank you for your insightful suggestions. I am using l-arginine during cell lysis and i am observing a substantial improvement in protein solubility. However, protein aggregation still remains same.
Especially pay attention to the isoelectric point of your protein. Choose the pH of your buffer at least 1 pH-unit off the pI (in either direction), otherwise your protein will lose net-charge and aggregate/precipitate.
Some proteins aggregate unless they are denatured during purification. In those cases, you'll probably need to include 6-8 M denaturant in your buffer--i.e., urea or guanidine hydrochloride. This can be desalted out just prior to experiments that require the protein to fold in its natural state.
u can try denaturing purification. I would like to suggest first use Urea denaturing purification. Various protocols are available if u dont find let me know i will suggest some literature.