First, you have to define what exactly is your marketing department composed of :
1. Do you have technical writers, market analysts, product strategists, branding experts, graphic designers, advertising experts ?
2. What specific function of your marketing department is failing or stagnant ?
3. Are they failing to promote your products/services effectively ?
4. Are the failing to follow the competitor and market trends ?
5. Are unable to bring in good ideas for existing and new products ?
6. Are they failing in effective branding of your company/products?
Marketing department these days is like the backbone of a company. In fact it's even critical to the other two core parts of the company, i.e. the sales and product team. So they need to be very passionate and active, and help push the company forward. Stagnation can be due to several causes e.g. :
1. Apathetic employees or team
2. Poor or inexperienced leadership (for the department)
3. Weak/New Industry, Poor/New Brand Name, Unmarketable Products (or difficult-to-market products)
Outside firms are not cheap and not sustainable long-term (unless you can afford it). If you plan to do some one-time or short-term projects, like getting consultation on a new project, get a new website design, doing brochures, exhibition, advertising, some branding advice etc.. then that's alright.
In the long-term however, you will still need a set of skilled and experienced people in your marketing department to help push the company forward. Also, doing this internally will give you better control and flexibility, and you can eventually accumulate a lot of know-how and experience in terms of marketing (that is very relevant and specific to your industry).
I would recommend an in-depth analysis of your current marketing team and an optimization plan. Sometimes all you need is one genius, one fantastic marketing leader, who will turn the whole department around.