You can only get 7 degrees of advance at idle, or you can only get 7 on top of the base advance? Because you say you get spark knock so it would seem as if you're getting plenty of advance. If you can't get past 7 degrees, I'd say you should pull the distributor out of the hole, then rotate it enough so it will engage the cam shaft 1 tooth earlier. I would also check the accuracy of your timing marks by finding tdc on the number one cylinder and checking what your timing tab says. If that doesn't get you anywhere, your fuel mixture might be off or your carburetor is too large. 650 cfm on a truck cammed 302 might be kind of big. 600 cfm was plenty on the cars with the 80's h.o engines.