Having a dummy established is a great start. It will help significantly.
So firstly I think you might need a lesson on the purpose of the dummy and the physiological changes that happen to baby sleep at around 4 months.
So in the first 3-4 months of baby's life, sleep is passive. As long as all needs are met (calories, warmth, comfort) then baby will sleep. It's like it was in the womb - this period is often called the fourth trimester. At around 4 months old sleep matures. It stops being passive and will never go back to being that.
Sleep develops into an active endeavour - it takes work to get to sleep rather than it being passive. It also develops into sleep cycles, like adult sleep. This is periods of deep sleep and light sleep in repeating cycles. This is new for baby, they were not having cycles of light sleep before. If baby's sleep hygiene is poor then waking up in the light sleep phase of the sleep cycle is easier - which causes frequent night wakes and shorter daytime naps.
Central to good sleep hygiene is to go to sleep where you stay asleep. So if baby goes to sleep in your arms, good sleep hygiene means staying asleep in your arms. If baby is to sleep in the cot, good sleep hygiene means going from awake to asleep in there. It is poor sleep hygiene to go to sleep in your arms (being fed) and then be put down in the cot already asleep.
That brings me onto the dummy - it is a great way to allow baby to comfort suck, but to go to sleep in the cot (or pram, or bouncer, or wherever) rather than going to sleep in your arms and then being put down asleep.
The dummy only serves the purpose of getting baby from being awake, into a light sleep. Then sucking slows down in the light sleep phase and once in a deep sleep all of the muscles in babys body relax. This includes the mouth/jaw muscles. So dummy drops when baby is in a deep sleep, it is meant to, it has served it's purpose. It's not needed again until baby next moves out of the deep sleep phase, to help them get back to the sleep.
If your baby's arms are thrashing around, this is happening in the light sleep phase (or indeed when still awake). You may need to help him calm and still his body. A swaddle or tightly tucked in sheet may help. Or hold his hands in yours on his chest, so he doesn't knock his dummy out. Basically you need to help him still his body so that he can calm down and relax, allowing comfort sucking to get to sleep.
Consistency is very important for baby sleep. So stopping all feeding to sleep will be necessary - start using in-cot settling for every nap and every wake up.
Daytime naps are usually short at this age - 45 minutes is normal. Your baby is getting over tired because theres too long awake between naps. I would aim for 90 minutes awake, never more than 2h. That includes settling time, so if it takes you 15 minutes to get baby to sleep (in the cot with dummy) then start doing that 75 minutes after last waking up. This means more naps per day to get better daytime sleep, while naps are short.
Naps lengthen through practice. So for every single nap, try to resettle to help baby link from deep sleep to light sleep back to deep sleep, rather than waking up. To do this you need to sit with baby as he sleeps. Catch him coming out of the deep sleep, before actually waking up. This might show as a small movement - arm or leg moving, face screwing up, shuffling position, this kind of thing. If baby opens eyes or cries then he has actually woken up, so it's too late to resettle.
When you see that "tell" of coming out of the deep sleep, hold babys hands in yours on babys chest, as you did going to sleep. Maybe pat a bit. Reinsert dummy to allow for comfort sucking. Then just wait and fingers crossed he'll go back into a deep sleep (and dummy will crop again). Wait there a good 10 minutes to see him through to a new sleep cycle.
Resettles wont be successful every time. Don't worry about this, baby is still learning to deal with sleep cycles. But always try and then it will gradually become more successful. In the mean time while naps are short, keep awake time short to avoid over tiredness.