Here is the best advice I can give you knowing nothing about you outside of work:

#1 Take a day and get some fresh air before winter hits. Go on a hike - spend at least 4 hours by yourself on the trail. Imagine the perfect (reasonable) life - where do you live, who is there with you, what do you do each day?

#2 Can you plot a line from where you are right now to where you want to be? If you still want to do development, can you use what you are currently doing as part of a portfolio to show future employers? Do you have a portfolio of your work? Spend the next two weeks at work taking screenshots, making notes, etc, of EVERYTHING you've done at the company for the last two years. You don't know what you'll want later, and if it is internal or changed you won't be able to get it when you want it. Remember that ticketing system you made? Screenshots of that too, especially if that recognizable company's name is on it. If it's not on it, put it on it, then take another screenshot.

#3 You say you don't have mobility in terms of changing jobs. Why is that? Experience, education, geography? Can you stomach moving if you got a better job offer? What salary would you move for? You have no degree - how would your prospects differ if you had one? How old are you now and when will you retire? Is it worth working part-time, schooling full-time to earn the degree in order to have 30+ years of increased happiness?

#4 You don't want to be seen as a cost (of course not, it is like saying what you do is not important to the company or team). It sounds like your boss outsourced your efforts to another firm and he made a profit from it. It is easy to look at this like you're being taken advantage of - but look at it another way - this is your opportunity to move from "cost" to "pays for himself" to "profit making." Tell your boss to find two more of those outsource gigs for other dealers and he will start thinking about you differently because he will be able to directly measure your output.

#5 When you do start to look for the next job, think about how those new jobs work for their companies. If you're making websites and you work for a hospital, you're a "cost" again. If you make websites and work for a company that makes websites... it is a little different. In your next job try to find a position where you work with other technical people. It can be really hard to be the lone technical person in an office (just like I'm sure the graphic designer can have a hard time being the lone designer). Spend time now working on your resume, don't wait until you see a job listing you want or meet the right person. You need to have it ready so at any time you can send it out (so you're not in a rush and make errors).

Ok, here is the summary:

#1 Fresh air, introspection.

#2 Build your portfolio. Be able to prove to a non-technical person that you have been doing something for the last two years (besides taking a paycheck).

#3 Set your goals, identify obstacles and solutions. Be flexible and open minded to your options.

#4 Find ways your boss can directly measure your performance in ways that matter to him.

#5 Be prepared for the next opportunity. Keep your resume up-to-date. Start today.