For cancellation, it can be done at immigration division 1, doesn't take much time. For non-B, you will have to go out of the country and apply at a Thai embassy.
It's completely fine. You just need to cancel ur ED visa first (at the same immigration office u got that visa from) before leaving Thailand to apply DTV. Keep this in mind also, ur stay terminates the same day u cancel the visa so you will have to pay overstay fees of 500 bahts per day until you leave Thailand.
I suggest you just use the teaching profile as you can show your payslips up-to-date. A job newly started or assigned is a red flag for them. You can later change your profile to freelance when you need to extend the visa.
Check your contract for the info, if it's in Thai, use google translate to find clues on name of the place. Or just book another accommodation with free cancellation.