I let my daycare kids nap in the swing until about 5 months. However, around 3-4 months you are going to want to stop associating sleep with rocking, because as you've found, you aren't going to be able to do it forever. And once you no longer have that rocking, and he won't sleep without it...you will be in trouble. Best to start transitioning him to something else.
Instead, see if you can get him to sleep in a bouncer maybe? Or anything with a little incline that doesn't rock. Could even be a rolled towel under his matress if you are ready to transition him to crib.
Also, you will notice around 4 months that babies become MUCH more alert and their sleep patterns change dramatically. The kid that slept great in the swing may no longer like sleeping there, or may find it too stimulating.
Also, creating a bedtime routine will help him fall asleep faster, so he's not kicking/squirming. Give him a bath, read a book, let him nurse/bottle (all while lights are low and tv is off). Then once he's drifted off, gently lay him in the bouncer or carseat (which could be placed in his crib). Do the same thing, at the same time, everynight and he will get used to it. 3 months is young for any sort of set schedule, but the routine DOES help.
I wouldn't buy a bigger swing, because they really just aren't made for that and before you know it, your baby will be moving (possibly in a month or two!) and won't want to stay in there...and won't be safe to put him in there anymore.
Try watching the DVD (or reading if you want) 'The Happiest Baby on the Block' by Dr. Havery Karp...it is especially helpful for 'collicky' babies. May be able to get at library...or off Amazon.
Best of luck to you!