Your situation sounds a lot like my own - in the past, I tended to use a very "defensive" style of play, preferring closed openings, subtle position play, etc. If the opponent made a mistake and I could win a pawn with some clever tactics, it'd be enough to win the game, most of the time.
This approach is probably perfectly fine if you are aiming for a respectable rating (as we've often heard, simply not blundering will see you through to the 1800s), but for some reason, I began to lose interest in chess (probably from too many draws and eeked out wins).
After a break of several years, I started playing "strictly for fun", with friends in person, and online. This has given me the opportunity to experiment more with play style, and I found out that I actually prefer an aggressive style. It was surprising for me just how often this style of play would lead to the opportunity for exciting tactics. My experience on making the transition:
Play unrated games: It's difficult to experiment (wildly) with your play style while trying to play your strongest game. You should still review your games and try to learn from them, but you shouldn't worry if you lose.
Stop playing drawish openings: Some openings are simply more suitable for aggressive play than others. Prefer open games versus closed ones. As white, you have a tempo advantage, and you should try to make the most of it. As black, you can try to unbalance the game, as opposed to simply letting white run the show (e.g. Sicilian Defense). I've always found the Danish Gambit to be a wonderful opening. Get someone to play this opening with from the "Accepted" position, to appreciate what an aggressive style can lead to - you're two full pawns down, but have a huge advantage in development (aside - unfortunately, the Schlechter variation is strong for black, and almost everyone knows it nowadays).
Don't use your aggressive style on computers: Perhaps it's just me, but computers nowadays are way too good at tactics. They see things coming a mile away, and simply won't walk into your clever tactics, unless they are 6+ moves ahead. It's not fun to keep getting floored by the computer. Humans make mistakes more often, but more importantly, do not see every possible combination to at least 4 moves (unlike computers).
Piece position is important: This goes without saying, but having the pieces there when you need them makes all the difference. Attacks are often won or lost on a single tempo difference, so don't get tricked into giving up tempo, and try to get some from your opponent!
Build pressure: If in doubt, build pressure, complicate the situation. Look for a weak spot, and start aiming pieces at it. Again, you'd be surprised at how often a tense situation can lead to a brilliant combo / quick win.
These are all the basic, non-tactics related tips I have. To reiterate, I think you should just play many games in a more aggressive style. You will probably lose a lot at first, but you will also get a lot more practice in attacking, both strategically and tactically. Eventually the results will come, and if you decide to switch back to a more defensive style, the lessons learned will stay with you.
Edit: To expand on the comment about playing against computers, I find that their simulation of "weaker" human players is quite badly done. One well known program, for example, seems to change the player's heuristics in favour of different pieces ("likes knights", etc), and throws in a few major blunders at lower levels, while playing 99% accurately most of the time, thinking many moves ahead, and having an excellent opening repertoire. I don't really find this to be a realistic representation of a real player. Setting the AI up yourself, to have a shorter think time than you (and to not think on your clock time) may work slightly better, although typically leads to weak endgame play. In the end, it's more fun to just play against people, and with the internet, there's plenty of opportunity for that.